main
Ребренд Мониторинг Орбита -> Железный Егорин; accent green->amber #F59E0B; LoginScreen правая половина = Lightning (WebGL, hue 35 тёплый) под стеклянной формой; левая панель — тёплый градиент. Доступ агентам: репо публичный, push german-токеном. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Servaki Monitor — Смартпанель
Единая панель мониторинга с опциональными модулями:
- ⚡ Энергомониторинг — Sunways STH → Wiren Board → MQTT/InfluxDB; щитовые шкафы Navtelecom (FLEX/NTCB).
- 🧩 Смартпанель (realty) — Wiren Board: реле WB-MR, диммеры WB-MDM3, сцены (MQTT).
- 🧭 GPS-мониторинг — Navtelecom FLEX/NTCB → Traccar (REST/WebSocket); автопарк + стационарные объекты.
Продукт «продолжает» наработки Мониторинг ПО/NAvtelecom (FLEX-сервер, Wiren Board, Silero-«Рация») и
эталоны UI (orbit-gps-panel.html, sunways-dashboard.html), собирая их в один React-фронт.
Стек
React 18 + Vite + TypeScript + Tailwind. Графики — Recharts, иконки — lucide-react.
Дизайн-система (навык ui-ux-pro-max): тема Dark-OLED, акцент #22C55E, фон #0F172A, шрифты Fira Sans / Fira Code.
Архитектура (модульность)
src/
core/types.ts — типонезависимое ядро: MonitoredEntity, MonitorEvent (EventBus-контракт)
config/modules.ts — реестр модулей + флаги enabled (опциональность / мультиарендность)
components/ — AppShell (сайдбар+топбар), ui-примитивы (Card/KPI/Badge/StatusDot)
modules/
energy/ smart/ gps/ — три модуля, каждый самодостаточен
data/mock.ts — демо-данные (заменяются адаптерами)
Источники нормализуются адаптерами в MonitoredEntity (energy→InfluxDB, realty→WB-MQTT, transport→Traccar).
Модуль включается/выключается флагом enabled — далее флаги придут с бэкенда по clientId.
Запуск
npm install
npm run dev # http://localhost:5180
npm run build # dist/
Деплой
- vm-mts1 (публично, за Caddy — как Heritage):
docker compose up -d --build→:8096, Caddyreverse_proxy, поддомен через Beget API + LE-TLS. - Дубль на офис-Proxmox (внутренний/дев, рядом с реальным Wiren Board): тот же образ.
- Тяжёлый слой данных (InfluxDB/Grafana/MQTT/FLEX-сервер) — отдельным compose на Proxmox.
Дорожная карта
- ✅ Каркас + 3 модуля на моках, дизайн-система.
- Бэкенд-шлюз (Node/Express + PG + Redis): мультиарендность
clientId, нормализация, кэш, WS. - Адаптеры: Traccar (REST/WS), Wiren Board (MQTT deviceBridge), InfluxDB (энерго).
- EventBus → лента + звук + голос (Silero «Рация»).
- Карта MapLibre в GPS-модуле; вход (OAuth/OTP).
Description
�������� ������ � ���������������� + ������ (���� ������, ������ �����). ������ ������� ��� ������.
396 KiB
Languages
TypeScript
76.1%
JavaScript
8.3%
Python
7%
HTML
6.9%
Shell
1.3%
Other
0.3%