Real-time collaborative editing
Your task
Design the real-time collaborative editing engine for a shared rich-text document (think Google Docs / Notion page) where up to ~100 people can edit simultaneously, including offline editing that syncs on reconnect. Requirements: everyone's view converges to the same final document, no edit is silently lost, latency feels instant locally, and the document survives a server restart. Discuss your concurrency-control approach and its trade-offs.
It covers
- Operational transform
- Crdt
- Conflict resolution