Internals
CRDT Paperโ
Yjs is a CRDT implementation. It implements an adaptation of the YATA CRDT with improved runtime performance.
Implementation Detailsโ
Choosing efficient data structures is critical when implementing a CRDT. The following document gives an overview of the data structures used in Yjs.
yjs/INTERNALS.md at main ยท yjs/yjs
Shared data types for building collaborative software - yjs/INTERNALS.md at main ยท yjs/yjsInternals Visualizationโ
Visualization of different CRDT algorithms (including Yjs/YATA and Automerge/RGA).
Optimizations Overviewโ
JavaScript manages memory automatically using a garbage collection approach. Yjs is a particularly efficient implementation of the YATA CRDT that works well in the browser and in NodeJS. This article analyzes the performance of Yjs in JavaScript.
Are CRDTs suitable for shared editing?
Performance analysis of the Yjs CRDT in practice and in the worst case scenario.Codebase Walkthroughโ
How Yjs works from the inside out
This is an interview with Kevin Jahns - author of Yjs, a clean and fast CRDT implementation for collaborative editing:https://github.com/yjs/yjsThis is a dee...