feat: complete dashboard redesign, proxy unification, and Windows compatibility fixes
This commit is contained in:
46
README.md
46
README.md
@@ -28,14 +28,29 @@ Audio flow: `librespot / shairport / mopidy` → named pipe (PCM) → `snapserve
|
||||
|
||||
```bash
|
||||
make dev
|
||||
# or without make:
|
||||
docker compose -f docker-compose.yml -f docker-compose.dev.yml up -d
|
||||
```
|
||||
|
||||
Dashboard with hot-reload: **http://localhost:8090**
|
||||
**Dashboard with hot-reload:** http://localhost:8090
|
||||
|
||||
**Everything runs in the browser - no additional software needed!**
|
||||
|
||||
On first run, Docker builds the custom images (snapserver, snapclient, mopidy, librespot stub). Subsequent starts are instant.
|
||||
|
||||
### Mac audio output
|
||||
### Browser-Only Testing (Windows/Mac)
|
||||
|
||||
All services are accessible via browser:
|
||||
- **Dashboard (Main UI):** http://localhost:8090 - Full boat control interface
|
||||
- **Snapcast Web:** http://localhost:1780 - Audio zones + browser playback via Web Audio API
|
||||
- **Mopidy/Iris:** http://localhost:6680/iris/ - Music player
|
||||
- **SignalK:** http://localhost:3000 - Navigation backend (admin/bordanlage)
|
||||
|
||||
**Audio in browser:** Open Snapcast Web UI → Click 🔊 icon → Enable Web Audio playback!
|
||||
|
||||
### Native audio output
|
||||
|
||||
**Mac:**
|
||||
```bash
|
||||
make mac-audio # runs snapclient natively via Homebrew → Mac speakers
|
||||
make spotify # runs librespot natively via Homebrew → Spotify Connect on Mac
|
||||
@@ -43,6 +58,15 @@ make spotify # runs librespot natively via Homebrew → Spotify Connect on M
|
||||
|
||||
Both commands require `brew install snapcast` / `brew install librespot` (auto-installed if missing).
|
||||
|
||||
**Windows:**
|
||||
```powershell
|
||||
make windows-audio # runs snapclient natively → Windows speakers (WASAPI)
|
||||
```
|
||||
|
||||
Requires manual install: Download from https://github.com/badaix/snapcast/releases
|
||||
|
||||
See [WINDOWS_AUDIO_SETUP.md](WINDOWS_AUDIO_SETUP.md) for detailed Windows setup instructions.
|
||||
|
||||
---
|
||||
|
||||
## Service URLs
|
||||
@@ -171,9 +195,15 @@ In **dev mode**, pipes are not used (no audio hardware crosses the Docker VM bou
|
||||
|
||||
---
|
||||
|
||||
## Migrating to the Boat
|
||||
## Deployment to Boat (Ubuntu Server)
|
||||
|
||||
Changes in `docker-compose.yml`:
|
||||
This system is designed to run on a boat with an Ubuntu server in kiosk mode.
|
||||
|
||||
**See detailed guide:** [KIOSK_SETUP.md](KIOSK_SETUP.md)
|
||||
|
||||
### Quick Summary
|
||||
|
||||
Changes in `docker-compose.yml` for production:
|
||||
|
||||
1. **Zone audio output** — replace `--player file:filename=null` with `--player alsa --soundcard hw:N,0`, uncomment `/dev/snd` device
|
||||
2. **Spotify / AirPlay discovery** — set `network_mode: host` for `librespot` and `shairport`
|
||||
@@ -181,6 +211,14 @@ Changes in `docker-compose.yml`:
|
||||
4. **Video decoding** (optional) — uncomment `/dev/dri` under `jellyfin`
|
||||
5. Use `make boot` instead of `make dev`
|
||||
|
||||
### Kiosk Mode (Chromium Fullscreen)
|
||||
|
||||
```bash
|
||||
chromium-browser --kiosk http://localhost:8080
|
||||
```
|
||||
|
||||
See [KIOSK_SETUP.md](KIOSK_SETUP.md) for complete Ubuntu server setup with autostart.
|
||||
|
||||
---
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
Reference in New Issue
Block a user