Files
PnvPanel/docs
Leonid Pershin 5b398f9c59
CI / Backend (build + test) (push) Successful in 1m16s
CI / Frontend (lint + typecheck + build) (push) Successful in 35s
Enhance Telegram bot functionality and configuration options
- Added new inline button features to the `/configs` command, allowing users to view their configurations in a single message with active links and a back button.
- Implemented a menu for unlinking Telegram accounts, providing a clearer user experience when managing account connections.
- Updated the `.env.example` file to include a new `Telegram__PublicSiteUrl` setting, enabling a button for accessing the panel's website directly from the bot.
- Enhanced documentation to reflect the new features and configuration options available in the Telegram bot.
2026-07-02 19:39:14 +03:00
..

PnvPanel — Документация

MVP реализован (backend M0M8 + полный frontend). Документация ниже описывает систему как она реально построена, со сверенными по коду деталями — не первоначальный план. Расхождения с ранним замыслом отмечены явно там, где это важно (например, домен изначально закладывал доменные события — в реализации от них отказались в пользу прямых вызовов из CQRS-хендлеров, см. architecture.md).

Индекс. Читать в этом порядке для погружения:

  1. Product Vision & Scope — продукт, роли, пользовательские сценарии, границы MVP.
  2. Architecture — Clean Architecture, слои, CQRS, интеграция с 3x-ui, realtime, безопасность, фоновые задачи.
  3. Domain Model — сущности, value objects, связи, инварианты, уведомления/аудит.
  4. Tech Stack (ADR) — принятые решения по технологиям и их обоснование.
  5. Backend Conventions — структура решения, паттерны, соглашения по коду.
  6. Frontend — стек, структура, работа с API и realtime.
  7. Telegram Bot — бот: ссылка на сайт, просмотр конфигов, passwordless-вход через привязку Telegram.
  8. API Design — контракты REST и SignalR.
  9. Roadmap — ретроспектива по этапам (milestones) + backlog.

Принятые решения

Ключевые развилки закрыты (полная таблица — в tech-stack.md):

  • CQRS — собственный тонкий диспетчер (не MediatR).
  • Роли — ровно одна роль на пользователя; квота = MaxConfigs роли.
  • Секреты нод — ASP.NET Core Data Protection (шифрование at-rest).
  • Тарифы Plan — backlog (в MVP конфиги без лимитов трафика/срока).
  • i18n — RU + EN с первого дня (react-i18next).
  • Telegram — long polling; только привязка аккаунта (signup из бота — backlog).
  • История трафика — простая таблица + TTL-чистка.
  • Логирование — Serilog.

Остаточные мелочи (не блокируют старт): значение TTL истории трафика, прод-синки Serilog, TTL токенов Telegram.