Featured
Case study
Realtime Sync Engine
A CRDT-based sync engine for collaborative apps.
- #Rust
- #CRDT
- #Realtime
- #WebSockets
Realtime Sync Engine
A conflict-free replicated data type (CRDT) sync engine for building collaborative applications. Used in production by 3 companies.
Why I built it
I needed a sync engine for a side project. The existing options were either too heavy (Yjs), too opinionated (Automerge), or too commercial (Liveblocks). I wanted something small, fast, and dependency-free.
Features
- Three CRDT types — counter, register, sequence
- Rust core with TypeScript bindings via napi-rs
- WebSocket transport with offline support and replay
- 10k+ concurrent edits per document in benchmark
- Sub-50ms p99 sync latency on a 3-region deployment
- Zero dependencies in the runtime
What I learned
CRDTs are easy to understand and hard to implement. The math is clean; the engineering is messy. The hardest part was not the algorithm — it was designing the API so that developers did not need to understand CRDTs to use it.