Repository navigation
Doc Tech Stack
PlutoGr edited this page Oct 17, 2026
·
1 revision
Версии взяты из global.json, файлов *.csproj, package.json и docker/docker-compose.yml в main. При обновлении зависимостей (Dependabot) таблица правится в том же PR, если меняется мажорная версия.
| Компонент | Технология и версия | Где используется |
|---|---|---|
| Платформа | .NET 10 (SDK 10.0.100, rollForward: latestMinor), ASP.NET Core |
все сервисы и Gateway |
| Обратный прокси | YARP 2.3.0
|
Gateway |
| ORM | EF Core, провайдер Npgsql 10.0.0
|
все сервисы с БД |
| Медиатор | MediatR 14.1.0
|
команды и запросы в слое Application |
| Валидация | FluentValidation 12.1.1
|
запросы API |
| Пароли | BCrypt.Net-Next 4.1.0
|
Identity |
| Аутентификация | JWT Bearer (Microsoft.AspNetCore.Authentication.JwtBearer) | все сервисы и Gateway |
| Межсервисные вызовы | gRPC: Grpc.AspNetCore, Grpc.Net.Client 2.76.0
|
Booking, Chat, Catalog, Identity, Media |
| Realtime | ASP.NET Core SignalR | Chat |
| Хранилище файлов | AWSSDK.S3 4.0.x поверх MinIO |
Media |
| Обработка изображений | SixLabors.ImageSharp 3.1.12
|
превью в Media |
| Redis-клиент | StackExchange.Redis 2.11.8
|
Gateway (лимиты), Identity (lockout) |
| Логи | Serilog.AspNetCore 10.0.0
|
все |
| Трассировка | OpenTelemetry 1.15.x
|
все |
| Тесты | xUnit, FluentAssertions, Testcontainers (PostgreSQL, MinIO) |
*.UnitTests, *.IntegrationTests
|
| Компонент | Версия | Назначение |
|---|---|---|
| React | 19 | интерфейс |
| TypeScript | 5.9 | типизация |
| Vite | 7 | сборка и dev-сервер |
| React Router | 7 | маршруты SPA |
| TanStack React Query | 5 | загрузка и кеш данных с API |
| Zustand | 5 | состояние (вход, избранное, интерфейс) |
| Axios | 1 | HTTP-клиент |
| Tailwind CSS | 4 | стили |
| @microsoft/signalr | 10 | клиент чата |
| Vitest, Testing Library | 3, 16 | тесты |
| ESLint | 9 | линтер |
| Компонент | Версия | Назначение |
|---|---|---|
| PostgreSQL | 17 (alpine) | базы сервисов |
| Redis | 7 (alpine) | лимиты Gateway, lockout Identity |
| MinIO | локально minio/minio:latest, на сервере свой образ из docker/minio/Dockerfile
|
файлы Media |
| nginx | в образе frontend | HTTPS, basic auth, раздача SPA, прокси /api/
|
| Docker Compose | запуск всех сервисов локально и на dev | |
| GitHub Actions, GHCR | CI, сборка и хранение образов | |
| Let's Encrypt (certbot) | сертификат dev |
Внешний префикс /api/v1. Ломающие изменения допускаются только в новом префиксе (/api/v2), неломающие (новые необязательные поля) в текущем. См. Публичный API.
Система
API
Сервисы
Как реализовано
Справочное
- Видение продукта
- Дорожная карта
- Этап 1: что осталось
- Этап 2: расширение
- Этап 3: масштабирование
- Концепция сайта и интерфейса
- Шаблон ТЗ