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 main features of automerge/automerge are: Replicated Data Convergence, Distributed State Synchronization, Conflict-Free Replicated Data Types, Rust-Based CRDT Implementations, Causal Dependency Tracking, Concurrent State Merging, CRDT State Synchronization Engines, Operation-Set State Representations.
Open-source alternatives to automerge/automerge include: loro-dev/loro — Loro is a conflict-free replicated data type (CRDT) framework and collaborative state engine designed for building… y-crdt/y-crdt — This project is a memory-safe library implemented in Rust that provides a high-performance engine for managing shared,… atom-archive/xray — Xray is a collaborative text editor and distributed workspace manager that utilizes conflict-free replicated data… rust-crdt/rust-crdt — This project provides a collection of conflict-free replicated data types implemented in Rust, designed to enable… toeverything/blocksuite — BlockSuite is a collaborative block editor framework built on a hierarchical block tree data model with CRDT-based… ueberdosis/hocuspocus — Hocuspocus is a backend framework designed to facilitate real-time collaborative editing and state synchronization in…
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
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
Xray is a collaborative text editor and distributed workspace manager that utilizes conflict-free replicated data types to synchronize real-time edits and directory structures across peers. It functions as both an Electron-based desktop application and a headless editor server that manages workspaces and file systems remotely for connected clients. The project distinguishes itself by integrating fine-grained version control tracking, recording keystroke-level changes and uncommitted edits between Git commits. It employs a decentralized synchronization model for working copies and uses operati
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