A real SQLite database whose pages live in IndexedDB, read and written on demand —
not sql.js-style whole-file-in-RAM. With FTS5 full-text search and
CRDT merge available in the same build. No server, no
SharedArrayBuffer, no network fetch.
Replica
booting…
Two independent databases in two IndexedDB stores. Add notes to each, then merge them
below — that is the CRDT part. Each is demand-paged the same way.
0 pages0 KB on “disk”db_version 0site —
Add a note
Then reload the page — it persists, written to IndexedDB block by block.
Full-text search (FTS5)
Ranked by bm25(), snippets from snippet().
0 notes
CRDT sync (cr-sqlite)
off
Promote notes to a conflict-free replicated relation. Then pull a changeset
from one replica and merge it into the other — in either order, any number of times.
Peek under the hood: DevTools → Application → IndexedDB → replica-a — each row is
one SQLite page (a FileBlock keyed [path, offset, version]). ·
wa-sqlite ·
cr-sqlite