leaflet_svelte/docs/diagrams/README.md
2026-06-17 00:20:55 +09:00

2.7 KiB
Raw Blame History

Диаграммы (PlantUML)

Исходники диаграмм для диссертации. Построены по фактическому коду (src/lib/api/*, src/lib/features/tracking/*, src/lib/features/wind/*).

Архитектура

Файл Что описывает
architecture.puml Слоистая архитектура клиента: routes → features → lib (api/map/ui/state/i18n/auth/domain), внешние сервисы (Backend, предсказатель) и библиотеки

Диаграммы последовательности (по всем запросам)

Файл Что описывает Запросы
seq-request-csrf.puml Сквозная обёртка request<T>(): CSRF, cookie, обработка ошибок и 401 GET /api/csrf/
seq-auth.puml Проверка сессии, вход, выход GET /api/session/, GET /api/whoami/, POST /api/login/, POST /api/logout/
seq-resource-crud.puml Единый CRUD-шаблон справочников /api/saved-points/, /api/saved-templates/, /api/saved-profiles/ (GET/POST/PUT/DELETE)
seq-prediction.puml Запуск прогноза траектории POST /api/predictions/
seq-telemetry.puml Загрузка истории и приём телеметрии GET /api/{id}/telemetry/, WS /api/ws/satellite/{id}/telemetry/
seq-wind.puml Визуализация поля ветра (статика + синхронизация) GET /api/v1/wind/field, GET /api/v1/wind/meta

Диаграмма потоков данных

Файл Что описывает
dfd-telemetry.puml DFD подсистемы слежения: внешние сущности, процессы 1.05.0, хранилища D1D3

Рендеринг в PNG/SVG

В системе есть Java, но нет CLI PlantUML. Один раз скачать jar и собрать все диаграммы:

curl -L -o plantuml.jar https://github.com/plantuml/plantuml/releases/latest/download/plantuml.jar
java -jar plantuml.jar -tpng docs/diagrams/*.puml      # PNG
java -jar plantuml.jar -tsvg docs/diagrams/*.puml      # SVG (для печати)

Альтернатива без установки — онлайн-редактор https://www.plantuml.com/plantuml или расширение PlantUML для VS Code (предпросмотр Alt+D).