Initial implementation: Bordanlage boat onboard system

Complete multiroom audio + navigation dashboard:
- Docker stack: SignalK, Snapcast (4 zones), librespot, shairport-sync, Mopidy, Jellyfin, Portainer
- React 18 + Vite dashboard with nautical dark theme
- Full mock system (SignalK NMEA simulation, Snapcast zones, Mopidy player)
- Real API clients for all services with reconnect logic
- SVG instruments: Compass, WindRose, Gauge, DepthSounder, SpeedLog
- Pages: Overview, Navigation, Audio (zones/radio/library), Systems
- Dev mode runs fully without hardware (make dev)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-26 11:47:33 +01:00
commit 946c0a5377
57 changed files with 3450 additions and 0 deletions

25
bordanlage/.env.example Normal file
View File

@@ -0,0 +1,25 @@
# General
COMPOSE_PROJECT_NAME=bordanlage
DEV=true
# Spotify Connect
SPOTIFY_NAME=Bordanlage
SPOTIFY_BITRATE=320
SPOTIFY_CACHE_SIZE=1024
# Boat Info
BOAT_NAME=My Yacht
BOAT_MMSI=123456789
# Paths
MUSIC_PATH=./music
# Jellyfin API Key (set after first run)
JELLYFIN_API_KEY=
# Service URLs (used by dashboard)
VITE_SNAPCAST_HOST=localhost
VITE_SIGNALK_HOST=localhost
VITE_MOPIDY_HOST=localhost
VITE_JELLYFIN_HOST=localhost
VITE_PORTAINER_HOST=localhost