crdt-benchmarks
editing-traces
crdt-benchmarks | editing-traces | |
---|---|---|
2 | 1 | |
24 | 39 | |
- | - | |
10.0 | 6.8 | |
12 months ago | 5 months ago | |
JavaScript | JavaScript | |
- | - |
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.
crdt-benchmarks
-
CRDT-richtext: Rust implementation of Peritext and Fugue
Diamond types author here! Congratulations on getting your crdt working! It’s lovely to see a new generation of CRDTs which have decent performance.
And nice stuff implementing peritext! I’d love to do the same in diamond types at some point. You beat me to it!
Im building a little repository of real world collaborative editing traces to use when benchmarking, comparing and optimising text based CRDTs[1]. The automerge-perf editing trace isn’t enough on its own. And we’re increasingly converging on a format for multi user concurrent editing traces too[2]. It’d be great to add some rich text editing traces in the mix if you’re interested in recording something, so we can also compare how peritext performs in different systems.
Anyway, welcome to the community! Love to have more implementations around!
https://github.com/josephg/crdt-benchmarks
https://github.com/dmonad/crdt-benchmarks/issues/20
-
Announcing crop, the fastest UTF-8 text rope for Rust
I have a few more real world editing traces that I use for jumprope in this repository: https://github.com/josephg/crdt-benchmarks
editing-traces
-
JSON-joy CRDT benchmarks, 100x speed improvement over state-of-the-art
Hey! Author of diamond types and the (linked) editing traces repository here. Would it be possible to make & share an editing trace or two from your application? Even a single user editing trace would be super helpful - like a big list of which objects were replaced by what values, in order.
I really want json based CRDTs to be fast, but one of the problems we have optimising this stuff is that there aren’t a lot of real world data traces around to use as baselines for benchmarking. I don’t know which parts of automerge are slow, and without that knowledge I can’t make them fast. If we have some data from your application, most upcoming json based CRDTs will almost certainly work well for your use case.
If you’re up for it, flick me an email or just open a PR on https://github.com/josephg/editing-traces
What are some alternatives?
electric_dart - A Dart implementation for Electric (electric-sql.com).
crdt-benchmarks - A collection of CRDT benchmarks
electric - Local-first sync layer for web and mobile apps. Build reactive, realtime, local-first apps directly on Postgres.
teletype - Share your workspace with team members and collaborate on code in real time in Atom
jumprope-rs
json-joy - JSON CRDT, JSON CRDT Patch, JSON Patch+, JSON Predicate, JSON Pointer, JSON Expression, JSON Type
yjs-sqlite-test - Test combining yjs and sqlite wasm
teletype-crdt - String-wise sequence CRDT powering peer-to-peer collaborative editing in Teletype for Atom.
crdt-richtext - Rich text CRDT that implements Peritext and Fugue
yjs - Shared data types for building collaborative software
pg_crdt - POC CRDT support in Postgres
Etherpad - Etherpad: A modern really-real-time collaborative document editor.