Explore projects
TypeScriptadvancedbackend
CRDT-based Collaborative Data Store
Collaborative data store with CRDT (Conflict-free Replicated Data Types): automatic serverless merging, offline-first, peer-to-peer sync.
5 steps
Project steps
- 01
Yjs document
Y.Doc with Y.Map, Y.Array, Y.Text; local operations apply instantly.
- 02
IndexedDB persistence
y-indexeddb: persists document state offline.
- 03
WebSocket sync
y-websocket server: synchronizes documents between connected clients.
- 04
Awareness
Yjs awareness protocol: cursors, selections, and user presence.
- 05
Undo/redo
Y.UndoManager per user; undo only affects their own operations.
Recommended resources
Ready to build this?
Fork the repo on GitHub and start building. A mentor will review your code when you open a PR.
5 steps
Tech stack
TypeScriptYjsy-websocketIndexedDBReact