Skip to content

Latest commit

 

History

History
10 lines (6 loc) · 726 Bytes

README.md

File metadata and controls

10 lines (6 loc) · 726 Bytes

diffsync

This implements a simple collaborative editor for the web

It implements collaborative text editing via git's recursive 3-way merge algorithm. This is how git merges big commits of source code. I bet you never thought it could be used for merging single-keystroke edits together!

It's actually remarkable fast, too, because it uses the amazing Myer's algorithm for the diffing!

See the index.html file for an example usage.

We hypothesize that this algorithm actually can be proven to be a CRDT, by observing that each recursive merge creates a least-upper-bound within a semilattice.