For conflict free data synchronization, the strongest matches are automerge/automerge (Automerge is a comprehensive CRDT library that provides the), yjs/yjs (Yjs is a comprehensive CRDT framework that provides the) and y-crdt/y-crdt (This library provides a high-performance, memory-safe CRDT engine that). rust-crdt/rust-crdt and loro-dev/loro round out the shortlist. Each is ranked by relevance to your query, popularity and recent activity.
Explore the best CRDT implementations for conflict-free data synchronization. Compare top-rated libraries by activity and features to find the best fit.
Automerge is a distributed state synchronization engine and library for conflict-free replicated data types. It enables multiple nodes to perform concurrent updates to a shared dataset while guaranteeing that all replicas eventually converge to the same state. The project provides a high-performance implementation written in Rust to manage state merging and synchronization. It employs a byte-compressed synchronization protocol to transmit minimal delta updates between peers, facilitating data consistency in peer-to-peer and real-time collaborative environments. The system covers broad capabi
Automerge is a comprehensive CRDT library that provides the core data structures, offline-first synchronization, and conflict resolution needed to build real-time collaborative applications.
Yjs is a CRDT framework and real-time state synchronization engine providing shared data types for collaborative software. It functions as a shared data type library of collaborative maps, arrays, and text structures that converge automatically across distributed clients, serving as a local-first data store and a collaborative editor backend. The system distinguishes itself through a synchronization engine that encodes document changes into commutative binary updates. It employs state-vector based differencing to transmit only missing incremental updates between peers and uses relative-positi
Yjs is a comprehensive CRDT framework that provides the core data structures, offline-first synchronization, and transport-agnostic capabilities required to build real-time collaborative applications.
This project is a memory-safe library implemented in Rust that provides a high-performance engine for managing shared, distributed data states. It functions as a conflict-free replicated data type implementation, enabling real-time collaborative editing and state synchronization across distributed systems without the need for a central server or manual conflict resolution. The library distinguishes itself through a cross-language binding framework that allows native applications in environments like Python, Swift, and WebAssembly to interact with the same shared data protocol. It utilizes a c
This library provides a high-performance, memory-safe CRDT engine that natively supports offline-first synchronization, real-time collaboration, and cross-language interoperability, making it a comprehensive solution for building distributed data systems.
This project provides a collection of conflict-free replicated data types implemented in Rust, designed to enable deterministic state synchronization across distributed systems. It functions as a framework for maintaining data consistency in decentralized environments where central coordination is absent. The library facilitates distributed state synchronization by tracking causal context and unique actor identifiers for every participant. This approach allows the system to resolve concurrent modifications through mathematical lattice structures, ensuring that all replicas converge to the sam
This library provides a robust collection of CRDT implementations in Rust that serve as the core building blocks for offline-first, real-time synchronization systems, though it functions as a data-type library rather than a complete, transport-ready synchronization engine.
Loro is a conflict-free replicated data type (CRDT) framework and collaborative state engine designed for building real-time collaborative applications. It provides a distributed data synchronizer that enables multiple users to edit shared documents and complex nested structures—such as maps, lists, trees, and counters—with automatic state convergence without requiring a central server. The project distinguishes itself through a versioned document store that supports branching, forking, and merging via a directed acyclic graph of causal operation history. It enables advanced version control c
Loro is a comprehensive CRDT framework that provides the core data structures, offline-first synchronization, and versioning capabilities required to build real-time collaborative applications.
Gun is a decentralized graph database and synchronization engine designed for real-time, peer-to-peer data management. It functions as a JavaScript library that enables applications to maintain consistent state across distributed nodes without relying on a central server. By utilizing conflict-free replicated data types and a gossip protocol, the system ensures that data updates propagate across the network and reconcile automatically. The project distinguishes itself through a focus on decentralized identity and security, utilizing public-key infrastructure to authenticate users and sign dat
Gun is a decentralized graph database and synchronization engine that natively implements CRDTs to provide real-time, offline-first data synchronization across distributed nodes.
json-joy is a comprehensive library for building real-time collaborative applications and distributed systems. It provides a robust framework for managing shared JSON-like data structures that automatically merge concurrent edits from multiple users, ensuring consistent state across all replicas without requiring a central coordination server. The project distinguishes itself through a high-performance approach to data handling, utilizing conflict-free replicated data types and logical clock-based synchronization to maintain data integrity. It includes a specialized engine for navigating and
This library provides a comprehensive framework for building real-time, offline-first collaborative applications by implementing CRDTs for JSON-like data structures, directly addressing your need for distributed state synchronization.
Orbit DB is a decentralized NoSQL database that utilizes conflict-free replicated data types to ensure eventual consistency across a network of nodes. It functions as a peer-to-peer data store that uses IPFS for content-addressing and synchronization, allowing for the maintenance of application state without a central server or authority. The system is built upon a cryptographically verifiable, immutable operation log, which serves as the foundation for custom decentralized data models. This architecture enables the implementation of various data storage patterns, including JSON document stor
OrbitDB is a decentralized, peer-to-peer database built specifically on CRDTs that provides offline-first synchronization, real-time collaboration, and data persistence without requiring a central server.
OrbitDB is a decentralized data storage system that enables the creation of serverless databases residing across a network of peers. It functions as a peer-to-peer database that integrates with a content-addressed storage layer to distribute and replicate data without a central server. The system utilizes conflict-free replicated data types to ensure eventual consistency and state convergence across distributed nodes. It maintains an immutable record of updates using a directed acyclic graph to preserve causal ordering and cryptographic integrity. Access is managed through a decentralized ide
OrbitDB is a peer-to-peer database built directly on CRDTs that provides offline-first synchronization, real-time collaboration, and persistent storage in a transport-agnostic, decentralized architecture.
cr-sqlite is a multi-master database replication system that uses conflict-free replicated data types to ensure eventual consistency across distributed nodes. It provides the core capabilities for offline-first data synchronization, allowing multiple database instances to merge concurrent updates and reach a consistent state. The project distinguishes itself through a combination of CRDT-based data replication and a WASM-based database engine, enabling full SQL execution and state persistence within web browsers. It supports peer-to-peer replication and cross-tab synchronization, utilizing ca
This is a CRDT-based database replication engine that provides offline-first synchronization, real-time collaboration, and persistent SQL storage, directly fulfilling all the requirements for a distributed data synchronization system.
Electric is a Postgres data synchronization engine and replication proxy designed to enable local-first software. It replicates data from Postgres databases to client-side stores in real time using logical replication, allowing applications to maintain a local embedded database for offline access and low-latency updates. The system distinguishes itself by using shapes to filter and authorize specific subsets of database rows and columns before streaming them to clients or edge workers. It further supports multi-user collaboration by integrating a conflict-free replicated data type framework t
Electric is a synchronization engine that enables local-first applications by replicating Postgres data to client-side stores, and it explicitly integrates CRDT frameworks to handle multi-user conflict resolution and real-time collaboration.
Livestore is a reactive state management framework that utilizes a local SQLite database to store and synchronize application data. It provides an event-sourced state store that processes typed events through materializer functions to derive and persist application state. The framework implements offline-first data synchronization using a push-pull engine and append-only event logs to maintain consistency between clients and servers. It includes a real-time presence system for tracking user activity and shared session status across connected clients. The system covers a broad capability surf
Livestore provides an offline-first, reactive synchronization engine using event sourcing and local persistence, though it relies on an event-log push-pull model rather than explicit CRDT data structures to resolve state conflicts.
TinyBase is a reactive data store and in-memory relational database designed for client-side state persistence. It serves as a local-first sync engine that merges distributed state using conflict-free replicated data types and logical clocks to ensure deterministic data convergence. The project features a schema validation library that converts external definitions from tools like Zod, Yup, and TypeBox into type-safe store definitions. It provides an infrastructure for real-time collaborative editing, utilizing synchronization with Automerge, Yjs, and PartyKit to maintain consistent state acr
TinyBase is a reactive local-first state store that natively integrates CRDTs and synchronization engines to enable real-time collaborative data persistence.
Iroh is a peer-to-peer networking stack and distributed system designed for secure direct connections, content-addressed storage, and synchronized data sharing. It provides a foundation for decentralized applications by combining a QUIC-based networking layer with primitives for distributed state and data transfer. The project distinguishes itself through a comprehensive suite of decentralized capabilities, including a distributed data store using conflict-free replicated data types for collaborative synchronization and a content-addressed storage system for verifiable, resumable transfers of
Iroh is a peer-to-peer synchronization engine that natively integrates CRDTs for distributed state management, providing the core primitives needed for offline-first, real-time collaborative applications.
This project is a reactive, offline-first NoSQL database engine designed for JavaScript applications. It provides a robust framework for managing application state by synchronizing data across browsers, mobile devices, and server-side runtimes. By treating local storage as the primary source of truth, it enables applications to remain functional without network connectivity, automatically reconciling changes with remote backends once a connection is restored. The database distinguishes itself through a modular architecture that supports cross-environment synchronization and high-performance d
RxDB is a reactive, offline-first database that natively integrates CRDTs for conflict resolution and real-time synchronization, making it a comprehensive tool for building local-first applications.
Hocuspocus is a backend framework designed to facilitate real-time collaborative editing and state synchronization in web applications. It functions as a server-side infrastructure that manages persistent WebSocket connections, enabling multiple users to edit shared documents simultaneously while maintaining data consistency through a conflict-free replicated data type engine. The platform distinguishes itself through a modular, middleware-driven architecture that allows developers to intercept document lifecycle events, enforce custom access control policies, and integrate external services.
This is a backend framework specifically designed to handle real-time synchronization for Yjs-based CRDT applications, providing the necessary infrastructure for persistence and collaborative editing.
| Repository | Stars | Sprache | Lizenz | Letzter Push |
|---|---|---|---|---|
| automerge/automerge | 6.4K | JavaScript | MIT | |
| yjs/yjs | 22.1K | JavaScript | NOASSERTION | |
| y-crdt/y-crdt | 2.1K | Rust | NOASSERTION | |
| rust-crdt/rust-crdt | 1.5K | Rust | Apache-2.0 | |
| loro-dev/loro | 5.4K | Rust | mit | |
| amark/gun | 19.1K | JavaScript | NOASSERTION | |
| streamich/json-joy | 1.1K | TypeScript | NOASSERTION | |
| orbitdb/orbit-db | 8.8K | JavaScript | MIT | |
| orbitdb/orbitdb | 8.7K | JavaScript | mit | |
| vlcn-io/cr-sqlite | 3.6K | Rust | mit |