collaborative editing
For all that the internet and text editing both have amazing long histories, they haven't really converged into a sane collaborative solution until quite recently. The architecture of modern implementations tends to follow the network topologies – and control structures – of the modern internet; therefore, the commonly used modern solutions tend to be shaped like a service. However the more natural and general shape for collaborative editing, which we tend to see emerge in the backend of these services as well as in internal, bespoke, and enterprise solutions, is a protocol.
The family of data structures and algorithms that represent collaborative editing workflows are CRDTs.
- AnyType docs discuss CRDT implementations and why they chose to write their own, any-sync.
- Ink & Switch are a workgroup that design local-first software, and write Automerge, a CRDT + libraries that implement it.