Offline-first collaborative editing

DesignHard55 minFigma and Google style

Your task

Design the sync engine for a CRDT-based collaborative document editor (think a rich-text note shared by a small team) that must work fully offline and converge once devices reconnect. Edits happen on phone, laptop, and web; two users can edit the same paragraph while both are offline for hours. There is no central 'lock' and no live connection required to keep editing. How do you guarantee all replicas converge to the same document without a coordinating server, and what does the server's role become?

It covers

  • Crdt
  • Offline sync
  • Convergence
  • Conflict resolution