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

41 lines
2.7 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Диаграммы (PlantUML)
Исходники диаграмм для диссертации. Построены по фактическому коду
(`src/lib/api/*`, `src/lib/features/tracking/*`, `src/lib/features/wind/*`).
## Архитектура
| Файл | Что описывает |
|------|----------------|
| [architecture.puml](architecture.puml) | Слоистая архитектура клиента: routes → features → lib (api/map/ui/state/i18n/auth/domain), внешние сервисы (Backend, предсказатель) и библиотеки |
## Диаграммы последовательности (по всем запросам)
| Файл | Что описывает | Запросы |
|------|----------------|---------|
| [seq-request-csrf.puml](seq-request-csrf.puml) | Сквозная обёртка `request<T>()`: CSRF, cookie, обработка ошибок и 401 | `GET /api/csrf/` |
| [seq-auth.puml](seq-auth.puml) | Проверка сессии, вход, выход | `GET /api/session/`, `GET /api/whoami/`, `POST /api/login/`, `POST /api/logout/` |
| [seq-resource-crud.puml](seq-resource-crud.puml) | Единый CRUD-шаблон справочников | `/api/saved-points/`, `/api/saved-templates/`, `/api/saved-profiles/` (GET/POST/PUT/DELETE) |
| [seq-prediction.puml](seq-prediction.puml) | Запуск прогноза траектории | `POST /api/predictions/` |
| [seq-telemetry.puml](seq-telemetry.puml) | Загрузка истории и приём телеметрии | `GET /api/{id}/telemetry/`, `WS /api/ws/satellite/{id}/telemetry/` |
| [seq-wind.puml](seq-wind.puml) | Визуализация поля ветра (статика + синхронизация) | `GET /api/v1/wind/field`, `GET /api/v1/wind/meta` |
## Диаграмма потоков данных
| Файл | Что описывает |
|------|----------------|
| [dfd-telemetry.puml](dfd-telemetry.puml) | DFD подсистемы слежения: внешние сущности, процессы 1.05.0, хранилища D1D3 |
## Рендеринг в PNG/SVG
В системе есть Java, но нет CLI PlantUML. Один раз скачать jar и собрать все
диаграммы:
```sh
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`).