first commit

This commit is contained in:
Oscar
2026-06-02 15:52:22 +03:00
commit dc44cdd639
105 changed files with 14674 additions and 0 deletions

61
starter-prompt.md Normal file
View File

@@ -0,0 +1,61 @@
# Стартовый промт для Claude — Dating App
## Контекст проекта
Ты помогаешь разрабатывать мобильное дейтинг-приложение. Проект называется **[название]**.
Основная идея:
- пользователи заполняют анкету
- листают ленту с фильтрацией по региону, населённому пункту, радиусу, возрасту, ключевым словам
- лента для каждого пользователя уникальная
- можно ставить лайки и дизлайки
- при взаимном лайке создаётся мэтч
- общаться в чате можно только с одним пользователем одновременно — диалоги с другими мэтчами заблокированы
- в чате можно делиться медиафайлами: фото, голосовые и видео сообщения
- пользователи договариваются о реальных встречах (dates) — с координатами, временем и статусом (опционально)
- если у пользователя больше N мэтчей — поиск становится неактивным до тех пор, пока он не разберёт пул
- система репортов: жалоба на сообщение или профиль с указанием причины
- регистрация открыта для всех, тарифный план один
---
## Технологический стек
### Backend
- **Node.js** + **NestJS** + **Fastify** — runtime и HTTP-сервер
- **Socket.io** — WebSocket для чата и уведомлений в реальном времени
- **TypeScript** — везде
- **OpenAPI** — генерация схемы через `@nestjs/swagger`
### База данных
- **PostgreSQL** — основное хранилище
- **Redis** — кеш, сессии, очередь лайков/мэтчей
- **Drizzle ORM** — работа с PostgreSQL
### Сервисы
- **Firebase Cloud Messaging (FCM)** — push-уведомления iOS / Android / Web
- **MinIO** — S3-совместимое хранилище медиафайлов
### Авторизация
- **JWT**
---
### API
- Добавить генерацию openapi схемы
## Схема базы данных
Считай файл `database-schema.md` и реализуй все Drizzle-схемы строго по нему.
Ключевые моменты:
- все PK — `uuid`, генерируются на уровне БД
- `user.active_chat_id` — один активный чат на пользователя одновременно
- `greetings` — standalone справочник фраз, без FK
---
## Структура репозитория
- Используй архитектурный подход Nestjs
- Используй лучшие практики взрослого продакшн проекта
---