server/docs/proposals/collaborative_cursors.md
vegard 7babafc65f Storyboard-spec, canvas-primitiv og universell overføring
Tre nye/omskrevne dokumenter som definerer fritt-canvas arkitekturen:
- Canvas-primitiv: felles underlag for whiteboard og storyboard (pan, zoom, drag, viewport culling)
- Universell overføring: message_placements-tabell og blokk-til-blokk drag-and-drop
- Storyboard: full spec med episode-sekvens, LiveKit-kobling, inter-board overføring

Inkluderer også storyboard-relaterte mini-proposals (ghost cards, pinboard mode,
flow meter, emotion tags, card chaining, collaborative cursors, card heat map).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-16 18:10:31 +01:00

1.1 KiB

Collaborative Cursors — Sanntids-pekere for flerbrukermiljø

Idé

Alle brukere som er på samme side ser hverandres musepekere som fargede prikker med navn. Fungerer på storyboard, kanban, whiteboard og kalender.

Hvorfor interessant?

Gir "jamming together"-følelse under innspilling og planlegging. Produsent og host ser hverandre jobbe i sanntid uten å snakke om det.

Fungerer slik

  1. Klient sender { user_id, x, y, page } til SpacetimeDB ved musebevegelse (throttlet til ~10 Hz)
  2. Andre klienter renderer fargede SVG-sirkler med brukernavn
  3. Prikken fader ut etter 5 sekunder uten bevegelse
  4. Valgfritt: kort "trail" som viser bevegelsesretning

Bygger på

  • SpacetimeDB (pub/sub for posisjoner)
  • Svelte ($state store for cursor-map)

Innsats

Lav — under 50 linjer Svelte + en SpacetimeDB-reducer.

Wow-faktor

Middels — visuelt tiltalende, men ikke kritisk funksjonalitet.

Åpne spørsmål

  • Bør pekere vises i chat-visning også, eller bare canvas-baserte views?
  • Throttling-strategi: SpacetimeDB-reducer eller klient-side debounce?