Minnow database
A browser native SQL database
Durable, columnar application data with no server and no WebAssembly module. Query it directly with SQL or through Kysely.
npm install @minnowdb/coreThe real thing
Query a live database
Loading the console…
The whole database, in the browser
Familiar tools for local data that needs to last.
PostgreSQL-style SQL
Use familiar parameters, joins, CTEs, windows, grouping sets, upserts, RETURNING, triggers, exact decimals, JSON, arrays, enums, and savepoints.
Direct SQL or Kysely
Use the engine's direct SQL API or connect Kysely through its PostgreSQL compiler. Both paths use the same engine and data.
Columnar and durable
Compressed columns make scans and aggregates efficient. IndexedDB and OPFS keep writes durable and publish each commit atomically.
No server or Wasm
Minnow is plain JavaScript, about 382 KiB gzipped with the engine and OPFS adapter. There is no database process, Wasm module, compile delay, or special hosting setup.
Safe across workers and tabs
Run queries off the UI thread. Snapshot reads stay consistent while other tabs write, and live queries refresh after relevant commits.
Search without index setup
Run full-text MATCH and BM25 queries on any column. Minnow builds and maintains the full-text index in the background when it helps.
Clear compatibility
Know which PostgreSQL features work
Every documented SQL form has a runnable example and a PostgreSQL classification. Supported reads and writes are compared with PGlite, and every deliberate difference or exclusion is listed plainly.
Try to catch it