tool
egwalker
created 2026-05-25 crdt · text-editing · algorithm · sequence-crdt
egwalker
A modern text-only sequence crdt|CRDT algorithm by Joseph Gentle (josephg), notable for being used in Figma’s 2025 text-editing feature. Constructs a CRDT structure temporarily to resolve concurrent text conflicts, then discards it — a pragmatic middle ground between full CRDT runtimes and central-server arbitration.
What’s interesting about it
- Transient CRDT — Figma’s server stays the central authority for the canvas; egwalker only spins up when there’s an actual text conflict to merge, then throws the structure away. You get correct merging without paying the long-term cost of carrying CRDT metadata for every document.
- Performance — designed to be faster than traditional sequence CRDTs (RGA, YATA) for the specific case of merging two divergent edit streams.
- Text-only — narrower scope than yjs or automerge, which is the source of its simplicity.
Where it shows up
- Figma text editing (2025) — Figma’s canvas is not a true CRDT system (server-mediated, crdt|last-writer-wins register semantics for properties). But for text editing inside design files, they introduced egwalker as a transient conflict-resolution layer in 2025.
When to think about it
If you’re building a CRDT-influenced architecture (server as authority, but with concurrent text fields that need correct merging), egwalker is the pattern Figma blessed: don’t carry CRDT state everywhere — instantiate it just-in-time at the conflict boundary.
For full CRDT collab editors, yjs is still the default.