Designing Data Structures for Collaborative Apps - Matthew Weidner
I’ve put many of the ideas from this post into practice in a library, Collabs. You can learn more about Collabs, and see how open-source collaborative apps might work in practice, in my Local-First Web talk: Video, Slides, Live demo. Suppose you’re building a collaborative app, along the lines of Google Docs/Sheets/Slides, Figma, Notion, etc. One challenge you’ll face is the actual collaboration: when one user changes the shared state, their changes need to show up for every other user. For example, if multiple users type at the same time in a text field, the result should reflect all of their changes and be consistent (identical for all users). Conflict-free Replicated Data Types (CRDTs) provide a solution to this challenge. They are data structures that look like ordinary data structures (maps, sets, text strings, etc.), except that they are collaborative: when one user updates their copy of a CRDT, their changes automatically show up for everyone else. Each user sees their own chang
Designing Data Structures for Collaborative Apps - Matthew Weidner Designing Data Structures for Collaborative Apps Matthew Weidner | Feb 10th, 2022 Home | RSS Feed Keywords: collaborative apps, CRDTs, composition I’ve put many of the ideas from this post into practice in a library, Collabs . You can learn more about Collabs, and see how open-source collaborative apps might work in practice, in my Local-First Web talk: Video , Slides , Live demo . Suppose you’re building a collaborative app, along the lines of Google Docs/Sheets/Slides, Figma, Notion, etc. One challenge you’ll face is the actu
Explore this link on the map →related reading
- An Interactive Intro to CRDTs | jakelazaroff.comjakelazaroff.com
- Building a BFT JSON CRDTjzhao.xyz
- Peritext: A CRDT for Rich-Text Collaborationinkandswitch.com
- You don't need a CRDT to build a collaborative experience | Hacker Newsnews.ycombinator.com
- You don't need CRDTs for collaborative experiences — /dev/knillzknill.io
- About CRDTs • Conflict-free Replicated Data Typescrdt.tech
- CRDTs go brrrjosephg.com
- Data Laced with History: Causal Trees & Operational CRDTs — Archagon Was Herearchagon.net
- Conflict-free replicated data type - Wikipediaen.wikipedia.org
- A simple way to build collaborative web apps | Hacker Newsnews.ycombinator.com
- CRDT: Text Buffer - Made by Evanmadebyevan.com
- Conflict-free replicated data type - Wikipediaen.wikipedia.org