В проекте используются раздельные конфигурации для бэкенда и фронтенда.
Backend:
Перейдите в директорию back/, создайте файл .env и скопируйте в него содержимое .env.back.example:
cp back/.env.back.example back/.envcp front/.env.front.example front/.envДля запуска всей инфраструктуры (БД, API, Frontend) используйте Docker:
# Сборка образов
make build
# Запуск контейнеров в фоновом режиме
make upПосле того как контейнеры запущены, необходимо выполнить миграции и (опционально) наполнить базу тестовыми данными. Чтобы запустить проект, нужно выполнить команды:
# Применение миграций
make migrate
# Наполнение тестовыми данными (сиды)
make seedПо умолчанию проект доступен по следующим адресам:
- Frontend: http://localhost:5173 (порт настраивается через
FRONTEND_PORTв.env) - Backend API: http://localhost:3000/api
- Swagger Documentation: http://localhost:3000/api/docs
make build— Сборка Docker образов.make up— Запуск контейнеров.make down— Остановка и удаление контейнеров.make reup— Перезапуск с пересозданием контейнеров (полезно при изменении.env).make migrate— Выполнение миграций БД внутри контейнера.make seed— Запуск сидов для наполнения БД.make logs— Просмотр логов всех сервисов.make api-gen— Генерация TypeScript клиента для фронтенда на основе Swagger.
- Юнит-тесты:
npm run test(в папкеback) - E2E-тесты:
npm run test:e2e(в папкеback)
- Юнит-тесты:
npm run test(в папкеfront) - Playwright E2E:
npm run test:e2e(в папкеfront)