GnuDash is now a fully static site. All SQL execution runs in-browser via a Web Worker using the official SQLite WASM build. Financial data never leaves the device and persists across sessions via OPFS.
Highlights
- Zero server dependency — deploys as static HTML/CSS/JS/WASM
- In-browser SQLite via Web Worker (official sqlite.org WASM build)
- OPFS persistence — no re-upload needed between sessions
- Upload timestamp shown in sidebar so you know when to refresh
- 37 snapshot tests covering all domain modules
- Deployment guide for Docker, Cloudflare Pages, Vercel, Netlify, and Coolify
- Dockerfile + nginx config included for self-hosting
Breaking changes from v1.x
- No longer runs as a Node.js server (
npm startremoved) better-sqlite3moved to devDependencies (tests only)- Hosting server must set
Cross-Origin-Opener-Policy: same-originandCross-Origin-Embedder-Policy: require-corpheaders