crdt-benchmarks

A collection of CRDT benchmarks (by dmonad)

Crdt-benchmarks Alternatives

Similar projects and alternatives to crdt-benchmarks

  1. yjs

    61 crdt-benchmarks VS yjs

    Shared data types for building collaborative software

  2. SurveyJS

    JavaScript Form Builder with No-Code UI & Built-In JSON Schema Editor. Add the SurveyJS white-label form builder to your JavaScript app (React/Angular/Vue3). Build complex JSON forms without coding. Fully customizable, works with any backend, perfect for data-heavy apps. Learn more.

    SurveyJS logo
  3. automerge

    A JSON-like data structure (a CRDT) that can be modified concurrently by different users, and merged again automatically.

  4. cr-sqlite

    Convergent, Replicated SQLite. Multi-writer and CRDT support for SQLite

  5. diamond-types

    The world's fastest CRDT. WIP.

  6. y-crdt

    Rust port of Yjs

  7. peritext

    A CRDT for asynchronous rich-text collaboration, where authors can work independently and then merge their changes.

  8. automerge-rs

    Discontinued Rust implementation of automerge [Moved to: https://github.com/automerge/automerge]

  9. InfluxDB

    InfluxDB – Built for High-Performance Time Series Workloads. InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.

    InfluxDB logo
  10. electric

    Real-time sync for Postgres.

  11. dotted-logootsplit

    A delta-state block-wise sequence CRDT

  12. json-joy

    json-joy is a library that implements cutting-edge real-time and collaborative editing algorithms and utilities for JSON data models, with a focus on developing the JSON CRDT (Conflict-free Replicated Data Type) specification and implementation.

  13. rust-crdt

    a collection of well-tested, serializable CRDTs for Rust

  14. teletype-crdt

    Discontinued String-wise sequence CRDT powering peer-to-peer collaborative editing in Teletype for Atom.

  15. dokieli

    4 crdt-benchmarks VS dokieli

    :bulb: dokieli is a clientside editor for decentralised article publishing, annotations and social interactions

  16. state

    2 crdt-benchmarks VS state

    A Redux-based state container for local-first software, offering seamless synchronization using Automerge CRDTs. (Formerly known as 🐟 Cevitxe). (by local-first-web)

  17. citrea-model

    A CRDT-based collaborative editor engine of letters.yandex.ru (2012, historical)

  18. slate-yjs

    Yjs binding for Slate

  19. y-websocket

    Websocket Connector for Yjs

  20. npm-registry-couchapp

    Discontinued couchapp bits of registry.npmjs.org

  21. lib0

    1 crdt-benchmarks VS lib0

    Monorepo of isomorphic utility functions

  22. SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a better crdt-benchmarks alternative or higher similarity.

crdt-benchmarks discussion

Log in or Post with

crdt-benchmarks reviews and mentions

Posts with mentions or reviews of crdt-benchmarks. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-05-22.
  • JSON-joy CRDT benchmarks, 100x speed improvement over state-of-the-art
    4 projects | news.ycombinator.com | 22 May 2023
    Author of Yjs here. I'm all for faster data structures. But only benchmarking one dimension looks quite fishy to me. A CRDT needs to be adequate at multiple dimensions. At least you should describe the tradeoffs in your article.

    The time to insert characters is the least interesting property of a CRDT. It doesn't matter to the user whether a character is inserted within .1ms or .000000001ms. No human can type that fast.

    It would be much more interesting to benchmark the time it takes to load a document containing X operations. Yjs & Yrs are pretty performant and conservative on memory here because they don't have to build an index (it's a tradeoff that we took consciously).

    When benchmarking it is important to measure the right things and interpret the results somehow so that you can give recommendations when to use your algorithm / implementation. Some things can't be fast/low enough (e.g. time to load a document, time to apply updates, memory consumption, ..) other things only need to be adequate (e.g. time to insert a character into a document).

    Unfortunately, a lot of academic papers set a bad trend of only measuring one dimension. Yeah, it's really easy to succeed in one dimension (e.g. memory or insertion-time) and it is very nice click-bait. But that doesn't make your CRDT a viable option in practice.

    I maintain a set of benchmarks that tests multiple dimensions [1]. I'd love to receive a PR from you.

    [1]: https://github.com/dmonad/crdt-benchmarks

  • CRDT-richtext: Rust implementation of Peritext and Fugue
    17 projects | news.ycombinator.com | 18 May 2023
    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

  • Cloudant/IBM back off from FoundationDB based CouchDB rewrite
    3 projects | news.ycombinator.com | 12 Mar 2022
    So yes, a particularly large document is not the norm but it can happen.

    JavaScript CRDTs can be quite performant, see the Yjs benchmarks: https://github.com/dmonad/crdt-benchmarks

  • Automerge: A JSON-like data structure (a CRDT) that can be modified concurrently
    12 projects | news.ycombinator.com | 20 Feb 2022
  • Automerge: a new foundation for collaboration software [video]
    13 projects | news.ycombinator.com | 10 Dec 2021
  • Show HN: SyncedStore CRDT – build multiplayer collaborative apps for React / Vue
    11 projects | news.ycombinator.com | 8 Dec 2021
  • 5000x Faster CRDTs: An Adventure in Optimization
    8 projects | news.ycombinator.com | 31 Jul 2021
  • A note from our sponsor - InfluxDB
    www.influxdata.com | 21 May 2025
    InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now. Learn more →

Stats

Basic crdt-benchmarks repo stats
8
489
7.6
about 1 year ago

Sponsored
JavaScript Form Builder with No-Code UI & Built-In JSON Schema Editor
Add the SurveyJS white-label form builder to your JavaScript app (React/Angular/Vue3). Build complex JSON forms without coding. Fully customizable, works with any backend, perfect for data-heavy apps. Learn more.
surveyjs.io

Did you know that JavaScript is
the 3rd most popular programming language
based on number of references?