# KosmoConnect Dashboard Public weather and node health visualization for the KosmoConnect mesh network. ## Tech Stack - **React 18** + **Vite** - **MapLibre GL** (open-source Mapbox alternative) - CartoDB Voyager basemap (free, no API key required) ## Running Locally Make sure the backend API is running on `http://localhost:8002` (see `backend/README.md`). ```bash cd web/dashboard npm install npm run dev ``` Open http://localhost:3000 in your browser. ## Features (v0.1) - Interactive map showing all registered enviro-nodes - Live sensor readings inside node popups (temperature, humidity, pressure, wind, PM2.5, PM10, battery, solar) - Auto-refresh every 15 seconds - Automatic map bounds fitting so all nodes are visible - Dark UI theme aligned with Church of Kosmo aesthetics ## Environment Variables | Variable | Default | Description | |----------|---------|-------------| | `VITE_API_BASE` | `http://localhost:8002` | Base URL for the KosmoConnect API | ## Architecture Notes - The Vite dev server proxies `/api` requests to `localhost:8002` to avoid CORS issues during development. - In production, the dashboard is served as static files and talks directly to the API host.