Design Figma's Real-Time Collaborative Canvas
Problem
Design Figma's core: a real-time multiplayer canvas where many designers edit the same file simultaneously.
Requirements
Functional:
- Multiple users edit shapes/text live; see cursors
- Conflict-free concurrent edits
- Large documents render fast (pan/zoom)
- Offline edits reconcile
Non-functional:
- Many collaborators per file, large scenes
- Low-latency sync (<100ms feel)
- No lost edits
Discussion points
- CRDT-based document model for conflict-free merges
- WebSocket sync + presence (multiplayer cursors)
- Client rendering (C++/WASM) and scene virtualization
- Geometry/hit-testing performance
- Offline reconciliation and versioning
asked …