CrewsForge Back — документация
Техническая документация по архитектуре, сервисам и фичам бэкенда CrewsForge (Nx-монорепозиторий на NestJS).
Эталонная ветка:
main— содержит все 6 сервисов. Отдельные фичи ведутся в веткахfeat/*и вливаются вmain.
Карта документации
Заголовок раздела «Карта документации»00 · Правила
Заголовок раздела «00 · Правила»| Документ | О чём |
|---|---|
| coding-rules | Правила написания кода: именование, слои, границы, DTO, конфиги, логирование, обязательные проверки |
| documentation-rules | Правила документирования: что, когда и как документировать после реализации |
00.5 · Стройка по архитектуре 2026-08
Заголовок раздела «00.5 · Стройка по архитектуре 2026-08»| Документ | О чём |
|---|---|
| delivery/START-HERE | Точка входа строительной сессии — команда /crewsforge-session |
| delivery/ROADMAP | Глобальный план: 27 срезов продукта — бизнес-задача, эндпоинты, критерии приёмки |
| delivery/SESSION-LOG | Журнал сессий: что сделано, отклонения, хендоффы |
| delivery/OPEN-QUESTIONS | Вопросы к владельцу продукта и юристу |
| architecture-session-2026-08-21 | Проектные документы: 9 шагов + журнал 31 решения |
01 · Обзор
Заголовок раздела «01 · Обзор»| Документ | О чём |
|---|---|
| repository-guide | Развёрнутое руководство по устройству репозитория (обзорное, не нормативное) |
| architecture | Общая архитектура, слои, диаграмма зависимостей |
| tech-stack | Технологии и библиотеки |
| conventions | Паттерны кода, структура фичи, именование, чек-лист новой фичи |
| data-flow | Путь запроса сквозь слои |
02 · Приложения
Заголовок раздела «02 · Приложения»| Документ | О чём |
|---|---|
| apps overview | Bootstrap и подключение модулей всех сервисов |
03 · Сервисы и фичи
Заголовок раздела «03 · Сервисы и фичи»| Домен | Документ |
|---|---|
| Аутентификация | auth/auth-api |
| Пользователи и профили | user/user-api |
| Проекты | project/project-api |
| Админ-панель | admin/admin-api |
| AI-агент (реалтайм) | ai/ai-agent-service |
| Walrider (сквозная AI-фича) | ai/walrider |
| Отправка email | email-sender |
| Админ-сервис (спецификация) | admin-service-spec |
04 · Общие библиотеки
Заголовок раздела «04 · Общие библиотеки»| Документ | О чём |
|---|---|
| core-libs | Доменное ядро без зависимостей: money, domain-events, platform-calendar |
| configs | Конфиг-модули и полная таблица env-переменных |
| utils-clients | Клиенты: prisma, redis, s3, rabbit, mailer |
| shared-lib | Guards, decorators, filters, helpers, mapper, validators |
05 · Данные
Заголовок раздела «05 · Данные»| Документ | О чём |
|---|---|
| database-schema | Модели Prisma, ER-диаграмма, enum’ы · интерактивная схема на сайте документации |
| migrations | История миграций |
| seeds | Наполнение БД (роли, гео, тестовые данные) |
06 · Эксплуатация
Заголовок раздела «06 · Эксплуатация»| Документ | О чём |
|---|---|
| deployment | Docker, Dokploy, PM2 |
| infrastructure | Инфраструктура: домены, Traefik, окружения |
| security-review-report | Отчёт security-ревью |
| environment | Переменные окружения по сервисам |
| messaging | Топология RabbitMQ + WebSocket |
| local-dev | Запуск, сборка, миграции, тесты |
Сервисы одним взглядом
Заголовок раздела «Сервисы одним взглядом»| Сервис | Роль | Транспорт |
|---|---|---|
auth-api | Аутентификация customer/employee/admin, JWT, сессии | HTTP + Cookie |
user-api | Пользователи, профили, роли, справочники, аватары | HTTP |
project-api | Проекты + машина статусов | HTTP |
admin-api | Админ-панель | HTTP |
ai-agent-service | Реалтайм-чат с AI-агентом | WebSocket + RabbitMQ |
core-api | Prisma-схема, миграции, сиды | — |
Как поддерживать документацию
Заголовок раздела «Как поддерживать документацию»Каждая страница сервиса содержит раздел «Точки расширения» — используй его как отправную точку при добавлении новых фич. При изменении кода обновляй соответствующий раздел; таблицы эндпоинтов и env — самые чувствительные к устареванию.