Информационная система поддержки принятия управленцеских решений в области кадровой политики - Документация проекта
Данный проект состоит из монолитного Node.js + TypeScript REST бэкенда и React + Vite фронтенда. Все исходники проекта находятся в папке main.
Весь основной код находится внутри директории main.
Поэтому перед запуском любых команд необходимо перейти в неё:
cd mainВнутри папки main находятся следующие важные директории:
/src- Исходный код фронтенда (React, компоненты, страницы, роутинг)./server- Исходный код бэкенда (Express, REST API, работа с базой данных)./prisma- Схема базы данных PostgreSQL и миграции.
Для работы проекта локально вам понадобятся:
- Node.js 18+ и
npm - PostgreSQL (URL указывается в файле
.env) - Ключ к Keycloak (задаётся в конфигурации, сервер Keycloak обычно поднят на
http://127.0.0.1:8080)
- Откройте терминал в папке проекта.
- Перейдите в рабочую директорию:
cd main - Установите зависимости:
npm install - Настройте файл переменных окружения: создайте файл
.envна основе.env.example. - Синхронизируйте базу данных с Prisma:
npm run db:push - Запустите проект в режиме разработки.
Вам нужно открыть два терминала в папке
main:- Терминал 1 (Фронтенд):
npm run dev(запускает Vite наhttp://127.0.0.1:3000) - Терминал 2 (Бэкенд):
npm run dev:server(запускает Express API на порту 3001)
- Терминал 1 (Фронтенд):
npm run build- Сборка фронтенда в директориюmain/dist.npm test- Запуск тестов.
Проект настроен на автоматический деплой на GitHub Pages через GitHub Actions. При пуше в ветку main запускается файл .github/workflows/deploy.yml, который собирает проект и выкладывает папку dist. Бэкенд должен крутиться на отдельном сервере, а его адрес должен быть указан в файле main/.env.production (параметр VITE_API_URL).