In the context of computer science and distributed systems, CRDTs (Conflict-free Replicated Data Types) are specialized data structures that allow multiple users or systems to update the same data independently and concurrently without a central coordinator. They are designed to automatically merge divergent copies back into a single consistent state, making them a foundation for local-first and real-time collaborative software
1. Conflict-free Replicated Data Types (Computing)
Key Characteristics
- Decentralized: No central server is required to decide the "correct" version; every node is a peer.
- Offline Support: Users can make changes while disconnected; these are merged seamlessly upon reconnecting.
- Mathematical Properties: To work, their merge operations must be commutative (order doesn't matter), associative (grouping doesn't matter), and idempotent (duplicate updates don't change the result). [1, 2, 3, 4, 5, 6]
podcast
SE Radio 716: Martin Kleppmann Local-First Software – Software Engineering Radio
References
References
- Automerge.org Open source project
Built for Javascript and Rust, with ports or bindings for Swift, Python, C, Java, and more.
Library Initialization (docs)
automerge/automerge: A JSON-like data structure (a CRDT) that can be modified concurrently by different users, and merged again automatically. @GitHub
Automerge: Automerge is a library of data structures for building collaborative applications.
Automerge is a Conflict-Free Replicated Data Type (CRDT), which allows concurrent changes on different devices to be merged automatically without requiring any central server. - Designing Data-Intensive Applications (DDIA) — an O’Reilly book by Martin Kleppmann (The Wild Boar Book)
- The past, present and future of Local-first software. Local-first conference in Berlin (May 2024) The past, present, and future of local-first — Martin Kleppmann’s talks
- Local-first software and geopolitical risk Local-first software and geopolitical risk — Martin Kleppmann’s talks
- Very revealing post about the economics of publishing a very successful technical book Writing a book: is it worth it? — Martin Kleppmann’s blog
- Local-first software seminal essay Local-first software: You own your data, in spite of the cloud
- Local-first conf 2026
- Using automerge Practical Local-First Software with Automerge – Peter van Hardenberg
- Martin Kleppmann on Bluesky.

No comments:
Post a Comment