# Online Radio Explorer Touchscreen kiosk + admin for exploring and playing internet radio in the office. ## Quick start ```powershell cp .env.example .env npm install npm run dev ``` - Kiosk: http://localhost:5173/ - Admin: http://localhost:5173/admin/ - API: http://localhost:4173/api First boot creates the SQLite DB at `DB_PATH`, runs the seed, and provisions the bootstrap admin from `ADMIN_BOOTSTRAP_USER` / `ADMIN_BOOTSTRAP_PASSWORD`. ## Production ```powershell npm run build npm start ``` The built kiosk is served from `/`, admin from `/admin/`, API from `/api`. ## Layout - `server/` — Express, SQLite, WebSocket hub, source adapters, stream resolver. - `web/` — Vanilla JS kiosk (`web/`) and admin (`web/admin/`) bundled by Vite. - `data/seed/stations.json` — curated starter pack. - `deploy/` — systemd unit + Pi setup notes.