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
- An adventure in realtime collaborative editing — Dov Alperindov.dev
- Peritext: A CRDT for Rich-Text Collaborationinkandswitch.com
- Materialized views are obviously useful – Sophie Alpertsophiebits.com
- Operational transformation - Wikipediaen.wikipedia.org
- CRDTs go brrrjosephg.com
- Why Figma Wins - kwokchainkwokchain.com
- Building a BFT JSON CRDTjzhao.xyz
- Speeding up file load times, one page at a timefigma.com
- Operational transformation - Wikipediaen.m.wikipedia.org
- How's Linear so fast? A technical breakdownperformance.dev
- Scaling long-running autonomous coding · Cursorcursor.com
- Upwelling: Combining real-time collaboration with version control for writers.inkandswitch.com