Get the latest tech news
Collaborative Text Editing Without CRDTs or OT
Matthew Weidner | May 21st, 2025 Home | RSS Feed Keywords: text editing, server reconciliation, Articulated Collaborative text editing is arguably the hardest feature to implement in a collaborative app. Even if you use a central server and a fully general solution to optimistic local updates (server reconciliation), text editing in particular requires fancy algorithms - specifically, the core of a text-editing CRDT or OT.
By making text editing flexible and easy to DIY, I hope that the approach will let you create rich collaborative apps that are challenging to build on top of a black-box CRDT/OT library. Clients can also send operations with fancier semantics than “insert after” to better capture user intent - thus increasing the odds that the server’s eventual state is reasonable in spite of concurrent edits. I hope that it is easier to understand and implement than a typical text-editing CRDT - it involved no trees or mathematical proofs - and the above remarks on Flexible Operations and Formatting still hold in the decentralized setting.
Or read this on Hacker News