Synops — redaksjonelt OS og kunnskapsgraf
Implementerer sanntids mixer-synkronisering mellom alle deltakere i et LiveKit-rom via SpacetimeDB. Når én deltaker justerer gain eller muter en kanal, oppdateres alle klienters Web Audio-graf og UI umiddelbart. SpacetimeDB-modul (Rust): - MixerChannel-tabell med room_id/target_user_id-indekser - Reducers: set_gain (clamped 0.0-1.5), set_mute, toggle_effect, create/delete_mixer_channel, set_mixer_role (editor/viewer) - Viewer-sjekk i reducers — viewer kan ikke endre andres kanaler - Opprydding av mixer-kanaler i close_live_room og clear_all Frontend (SvelteKit): - mixerChannelStore med reaktive callbacks og room_id-indeks - MixerTrait leser delt state fra STDB, skriver endringer via reducers - suppressRemoteSync-flagg forhindrer feedback-loop ved egne endringer - Viewer-modus: disabled sliders/knapper for låste deltakere - Visuell (V)-indikator for viewer-kanaler Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| config | ||
| docs | ||
| frontend | ||
| maskinrommet | ||
| migrations | ||
| ops | ||
| reference | ||
| scripts | ||
| spacetimedb | ||
| tools | ||
| .env.example | ||
| .gitignore | ||
| CLAUDE.md | ||
| spacetime.json | ||
| tasks.md | ||