Explanation
Product and Architecture Tradeoffs
Understand the design decisions, alternatives, and limits.
LiveBoard deliberately avoids several features that would change the collaboration model. Character-by-character text editing would require string-range operations and conflict handling inside one text object. Share links and role tiers would expand the access model beyond owner-managed membership. Image uploads and export would introduce storage, rendering, and security surfaces that are orthogonal to the core realtime operation engine.
The central architecture tradeoff is using server-serialized operations rather than a fully peer-to-peer or CRDT-first editor. Offline merging becomes less ambitious, but the system gains one authoritative revision order, one shared undo/redo history, and straightforward recovery after missed Pub/Sub messages. For small synchronous sessions, that exchange is worth taking.
- PostgreSQL authority simplifies recovery and history, but every durable edit must pass through the backend.
- Transient previews keep dragging fluid, but they must be discarded on rejected writes or revision refreshes.
- JSON canvas state is easy to patch and broadcast, but validation must enforce shape-specific rules.
- Whole-object text editing keeps collaboration simple, but it does not support rich text ranges.