feat: comprehensive React SPA replacing Jinja2 UI

- New dark UI with 7 tabs: Rig, FX Chain, Models, IRs, Presets, Settings, Record
- All screens wired to live API endpoints
- Real-time state via WebSocket + polling fallback
- Models screen: list/load/unload/upload NAM files + Tone3000 search/install
- IRs screen: list/load/unload/upload IR files + Tone3000 search/install
- Presets screen: browse banks, activate, save, delete
- Settings screen: WiFi scan/connect/hotspot, Bluetooth/MIDI, 4CM routing
- Rig screen: live state, volume, bypass, tuner, signal chain
- FX Chain screen: block params, per-block bypass
- Serves at / instead of /ui
- Built with Vite, ~71KB gzipped
This commit is contained in:
2026-06-12 15:30:03 -04:00
parent 35d2dc0893
commit 32690c293e
18 changed files with 4342 additions and 2 deletions
+2
View File
@@ -0,0 +1,2 @@
* { margin: 0; padding: 0; box-sizing: border-box; }
body { background: #0A0A0C; color: #F0EDE6; }