lib0
slate-yjs
Our great sponsors
lib0 | slate-yjs | |
---|---|---|
1 | 1 | |
307 | 484 | |
- | - | |
8.1 | 5.0 | |
3 days ago | about 2 months ago | |
JavaScript | TypeScript | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
lib0
-
Automerge: a new foundation for collaboration software [video]
https://github.com/dmonad/lib0
JavaScript engines use UTF-16 encoding. Golang (my main backend language) is using UTF-8 ... reimplementing Yjs code in Golang with algorithms and optimization and futher scaling might become impossible for small startups.
Build parallels with Automerge
4. Rich editing similar to Google Doc is very very complicated subject with lot of landmines
BitPhinix seems making a progress on updated example
slate-yjs
What are some alternatives?
y-crdt - Rust port of Yjs
automerge - A JSON-like data structure (a CRDT) that can be modified concurrently by different users, and merged again automatically.
crdt-benchmarks - A collection of CRDT benchmarks
automerge-rs - Rust implementation of automerge [Moved to: https://github.com/automerge/automerge]
rust-crdt - a collection of well-tested, serializable CRDTs for Rust
Matrix-CRDT - Use Matrix as a backend for local-first applications with the Matrix-CRDT Yjs provider.
peritext - A CRDT for asynchronous rich-text collaboration, where authors can work independently and then merge their changes.
rust-libp2p - The Rust Implementation of the libp2p networking stack.