BetterFrame/server/src
Mitchell R 16ab165b06 feat: live updates via WebSocket — server pushes, kiosk reloads
Server side:
- service-coordinator-ws: full WS implementation using ws package
- Auth via ?token=<kiosk_key> query param
- Coordinator registry for cross-plugin notification
- Admin mutations call notifyKiosks() → server pushes reload-bundle
- 30s ping/pong heartbeat

Kiosk side:
- Rust ws_client with tokio runtime + tokio-tungstenite
- Auto-reconnect with exponential backoff (1s → 60s cap)
- On reload-bundle: re-fetches bundle, re-renders layout
- Pong replies to server pings

Also fix: auto-suffix kiosk name on UNIQUE collision (re-pair with
same hostname no longer fails).
2026-05-10 22:15:58 +02:00
..
plugins feat: live updates via WebSocket — server pushes, kiosk reloads 2026-05-10 22:15:58 +02:00
schemas refactor: Nx-Witness layout builder + drop regions/is_default 2026-05-10 21:55:19 +02:00
scripts adding initial project 2026-05-10 01:09:13 +02:00
shared feat: live updates via WebSocket — server pushes, kiosk reloads 2026-05-10 22:15:58 +02:00
web-static adding initial project 2026-05-10 01:09:13 +02:00
web-templates refactor: Nx-Witness layout builder + drop regions/is_default 2026-05-10 21:55:19 +02:00