flagship · 2025
Nori
An infinite canvas for thinking together — cards, stickies, drawings, frames and comments, synced live between everyone in the room.
the hard part — try to break it
Take a replica offline, edit the same note on both sides, then reconnect. Last-writer-wins on a Lamport clock — the hashes always end up matching.
how it fits together
layer 2 / 5 — Y.Doc
The shared data structure. Every edit becomes an operation that merges commutatively, so concurrent changes from different people can't corrupt the document.
- CRDT-based synchronisation with Yjs and Hocuspocus — concurrent edits merge without a central lock or conflict dialog.
- Multi-user presence and live cursors driven by the Yjs awareness protocol.
- NextAuth authentication with MongoDB persistence for document durability.
- Inspired by FigJam and Miro, built to understand how they actually work underneath.