Documents all the way down
User data, schemas, and even the engine’s own system state are all documents, read through one small API — like the Unix filesystem. Read the core idea.
Documents all the way down
User data, schemas, and even the engine’s own system state are all documents, read through one small API — like the Unix filesystem. Read the core idea.
Optimistic by default
Changes apply locally the moment they’re made and are confirmed — or cleanly rejected — by an authoritative server. How sync works.
Keeps working offline
An opt-in IndexedDB layer makes the write queue and document cache durable: a reload becomes a reconnect, cached documents render immediately, and two offline tabs converge through the shared store with no server round-trip. Offline persistence.
Structured data and rich text
A hybrid model by design: structured data as guarded, server-ordered JSON Patch, rich text as embedded Yjs (CRDT) on its own sync lane — each with the merge semantics it needs. Rich text with Yjs.
A staging area for changes
A staged session lets humans and AI agents gather edits, preview conflicts three-way, and commit them atomically. Staged sessions.
Built with agents in mind
The surface is small and uniform enough to wrap cleanly for an LLM — and because schemas are themselves documents, an agent can define new document types at runtime, not just fill in existing ones. datadata and AI agents.
Mind the gap
This is early-stage software. Known issues — including problems we’ve found with the JSON Patch RFC — live in the open. Known issues & open questions.
Under the hood
Wire protocol, storage model, and the reasoning behind the design. Design decisions.