2.4 KiB
2.4 KiB
Технологический стек
Стек по умолчанию
| Компонент | Технология | Версия | Примечание |
|---|---|---|---|
| Язык | Python | 3.12+ | |
| Фреймворк | FastAPI | 0.115+ | async, OpenAPI |
| ORM | SQLAlchemy | 2.0+ | async |
| Валидация | Pydantic | 2.x | v2 синтаксис |
| База данных (dev) | SQLite | — | через aiosqlite |
| База данных (prod) | PostgreSQL | 14+ | через asyncpg |
| Миграции | Alembic | 1.14+ | |
| Аутентификация | JWT + bcrypt | — | passlib |
| Фронтенд | React + Vite + TS | 18/5/5 | |
| Стили | Tailwind CSS | 3.4+ | |
| PWA | vite-plugin-pwa | 0.20+ | |
| Тесты | pytest | 8+ | asyncio_mode=auto |
| Линтер | ruff | ||
| Форматтер | ruff format | line-length=88 |
Опциональные компоненты
| Компонент | Когда добавлять | Альтернативы |
|---|---|---|
| Celery + Redis | Для фоновых задач (AI, email, backup) | Прямой вызов в dev |
| PostgreSQL | Для production | SQLite в dev |
| AI providers | Если нужен AI-анализ | Yandex GPT, GigaChat, OpenAI |
| OAuth2 | Если нужен вход через соцсети | Яндекс, Google, GitHub |
| SMTP | Если нужны email-уведомления | |
| Docker | Для воспроизводимого деплоя | |
| Prometheus + Grafana | Для мониторинга в prod | |
| System Agents | Для саморазвития проекта | 4 ядерных, остальные по необходимости |
[ASK] Выбор стека
Перед началом проекта ответьте на вопросы:
- Будет ли проект в production? Если да → PostgreSQL + мониторинг
- Нужны ли фоновые задачи? Если да → Celery (или прямой вызов на старте)
- Нужен ли AI? Если да → FallbackChain с 2+ провайдерами
- Нужен ли фронтенд? Если да → React/Vite/Tailwind
- Нужна ли PWA? Если да → vite-plugin-pwa + Service Worker
- Нужны ли агенты? Если да → 4 ядерных с первого коммита