docs: add full project documentation

- Architecture: overview, 7 ADR, tech stack
- Principles: code-style, git-workflow, security
- API contracts: auth, profile, tests, admin endpoints
- Database schema: tables, relationships, indexes
- LLM strategy: prompts, fallback, validation, Qwen 2.5 14B
- Onboarding: setup, Docker, .env template
- Progress: roadmap, changelog
- Agents: context, backend instructions

Made-with: Cursor
This commit is contained in:
Anton
2026-03-04 12:07:17 +03:00
commit 99cd8ae727
21 changed files with 3763 additions and 0 deletions

View File

@@ -0,0 +1,26 @@
# ADR-001: Polyrepo вместо monorepo
## Статус
Принято
## Контекст
Нужно выбрать структуру репозиториев для проекта с отдельным backend и frontend.
## Варианты
1. **Monorepo** (один репо, npm workspaces / turborepo) — единый CI, общие типы, но сложнее настройка, тяжелее клонирование.
2. **Polyrepo** (отдельные репозитории) — изолированные пайплайны, простой CI, независимый деплой.
## Решение
Polyrepo: `samreshu-backend`, `samreshu-frontend`, `samreshu-docs`.
Для команды из 1-2 человек monorepo-тулинг (turborepo, nx) создаёт overhead без ощутимой пользы. Backend и frontend деплоятся независимо, имеют разные зависимости и разные циклы релизов.
## Последствия
- Общие TypeScript-типы дублируются в каждом репо (без shared-пакета)
- CI/CD настраивается отдельно для каждого репо
- Изменения API-контрактов требуют ручной синхронизации между репо