Realtime Editing of Ordered Sequences | Figma Blog
figma.com · 973 words · saved by 1 readers
One of the problems we had to solve when we added multiplayer editing to Figma was supporting simultaneous editing of ordered sequences of objects.
One of the problems we had to solve when we added multiplayer editing to Figma was supporting simultaneous editing of ordered sequences of objects. We have many compound object types in Figma (the document, groups, components, etc.) and each compound object has an ordered list of children. Users can insert new children, remove children, or drag them around to reorder them and everything updates in realtime: The core problem is maintaining eventual-consistency. Each client instantaneously applies its edits locally and then sends them off to the server, which then sends the edits to other…
saved by
related reading
- Peritext: A CRDT for Rich-Text Collaborationinkandswitch.com
- Operational transformation - Wikipediaen.wikipedia.org
- CRDTs go brrrjosephg.com
- Why Figma Wins - kwokchainkwokchain.com
- Upwelling: Combining real-time collaboration with version control for writers.inkandswitch.com
- Operational transformation - Wikipediaen.m.wikipedia.org
- John's Blog · Figmajohnolilly.com
- Fugue: A Basic List CRDT - Matthew Weidnermattweidner.com
- CRDT: Fractional Indexing - Made by Evanmadebyevan.com
- An adventure in realtime collaborative editing — Dov Alperindov.dev
- Project Cambria: Translate your data with lensesinkandswitch.com
- Data Laced with History: Causal Trees & Operational CRDTs — Archagon Was Herearchagon.net