Enhance documentation with new features: added dark/light/system theme support, instructions page, and application catalog. Updated API and domain model for app management and automatic migrations on startup. Improved frontend structure with new routes and features for user instructions and app management.
This commit is contained in:
+8
-2
@@ -125,8 +125,12 @@ MVP (не нужен публичный webhook, проще в одиночно
|
||||
+ fallback на `index.html`), фронт и бек — один origin.
|
||||
- **docker-compose**: `app` (единый образ) + `db` (PostgreSQL) с томом.
|
||||
- Почему не отдельный nginx: единый origin упрощает CORS/куки/деплой и укладывается в требование
|
||||
«фронт+бек в одном контейнере». Nginx/reverse-proxy — опция для прод (TLS-терминация) поверх, но не обязателен.
|
||||
- **CI**: сборка/тесты бэка (`dotnet test`), линт/сборка фронта (`pnpm build`), сборка единого образа.
|
||||
«фронт+бек в одном контейнере».
|
||||
- **TLS — внешний** (решение): HTTPS терминирует внешний прокси/шлюз (nginx/Traefik/cloud LB) вне
|
||||
compose; `app` отдаёт HTTP и доверяет `X-Forwarded-*` через `ForwardedHeaders`. Свой nginx/Caddy не вводим.
|
||||
- **Миграции** — авто на старте приложения (MVP).
|
||||
- **CI** — GitHub Actions, **только сборка/тесты**: `dotnet build`/`test`, `pnpm build`/`lint`/`typecheck`.
|
||||
Публикация образа и деплой — вручную/позже (в MVP не автоматизируем).
|
||||
- **Пакетный менеджер фронта**: pnpm (быстрый, экономный по диску).
|
||||
|
||||
## Принятые решения (по открытым вопросам)
|
||||
@@ -166,6 +170,8 @@ MVP (не нужен публичный webhook, проще в одиночно
|
||||
| Самоудаление аккаунта | Разрешено: отзыв всех конфигов + удаление данных, аудит анонимизируется |
|
||||
| Версионирование API | Без версий в MVP (`/api` без `v1`) |
|
||||
| Подписка (заголовки) | `Subscription-Userinfo` (used/total/expire) + `profile-update-interval` |
|
||||
| Тема сайта | Светлая + тёмная (+ системная); Tailwind `dark`, выбор в localStorage |
|
||||
| Инструкции/приложения | Отдельная страница инструкций + каталог `ClientApp` (админ CRUD, юзер — по ОС); стартовый сид из `seed/client-apps.json` |
|
||||
| Реконсиляция с 3x-ui | На синхронизации сверяем проекцию с панелью, помечаем дрейф, не «воскрешаем» молча |
|
||||
|
||||
Также заложены: CSRF-защита refresh-cookie + Identity lockout; проверка квоты в транзакции; схема
|
||||
|
||||
Reference in New Issue
Block a user