c9f7f4e9083c67d2d1b264c249213251a8b020b2
PriceForge
PriceForge — администратор цен и прайслистов для работы с данными MariaDB.
Текущее состояние проекта:
- Runtime: MariaDB-only
- Режим запуска: fail-fast (если БД недоступна на старте, сервер завершается)
- Основной интерфейс:
/admin/pricing - Порт по умолчанию:
8084
Возможности
- Администрирование цен компонентов
- Управление прайслистами (Estimate / Склад / Конкуренты)
- Импорт складских данных
- Алерты по ценам и свежести данных
- Диагностика подключения к БД в UI (online/offline индикатор)
Требования
- Go 1.22+
- MariaDB / MySQL с доступом к рабочей базе (например
RFQ_LOG)
Быстрый старт
- Подготовить конфиг:
cp config.example.yaml config.yaml
- Проверить параметры в
config.yaml:
server.port(по умолчанию8084)database.hostdatabase.portdatabase.namedatabase.userdatabase.password
- Запустить сервер:
make run
или
go run ./cmd/pfs
- Открыть:
Миграции
Запуск миграций:
go run ./cmd/pfs -migrate
При обычном запуске SQL-миграции из migrations/ также проверяются автоматически.
Сборка
make build
make build-release
make build-all
Проверка версии:
./bin/pfs -version
Release-артефакты
Скрипт сборки релиза:
./scripts/release.sh
Он создает архивы в releases/<version>/ и файл SHA256SUMS.txt.
Запуск на macOS
После скачивания бинарника может сработать Gatekeeper. Выполните:
xattr -d com.apple.quarantine /path/to/pfs-darwin-arm64
После этого бинарник запустится без предупреждения Gatekeeper.
Основные команды Makefile
make run # запуск dev-сервера
make build # локальная сборка
make build-release # релизная сборка
make build-all # кросс-компиляция для Linux/macOS/Windows
make test # тесты
make clean # очистка артефактов
Важно
Проект сейчас не использует SQLite в runtime-потоке сервера pfs.
Все ключевые операции выполняются напрямую через MariaDB.
Description
Languages
Go
47.2%
CSS
25.1%
JavaScript
16%
HTML
11.3%
Makefile
0.2%
Other
0.2%