lib0
rust-crdt
lib0 | rust-crdt | |
---|---|---|
1 | 2 | |
307 | 1,287 | |
- | 0.9% | |
8.1 | 5.2 | |
7 days ago | 8 days ago | |
JavaScript | Rust | |
MIT License | Apache License 2.0 |
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
rust-crdt
What are some alternatives?
slate-yjs - Yjs binding for Slate
y-crdt - Rust port of Yjs
rust-libp2p - The Rust Implementation of the libp2p networking stack.
crdt-benchmarks - A collection of CRDT benchmarks
yjs - Shared data types for building collaborative software
automerge-rs - Rust implementation of automerge [Moved to: https://github.com/automerge/automerge]
peritext - A CRDT for asynchronous rich-text collaboration, where authors can work independently and then merge their changes.
obake - Versioned data-structures for Rust
automerge - A JSON-like data structure (a CRDT) that can be modified concurrently by different users, and merged again automatically.