Boltstore Documentation
Boltstore is a self-hostable Database-as-a-Service (DBaaS) built on SQLite + Bun. One process serves many isolated SQLite databases over a REST API, with an admin dashboard for management, analytics, and audit logging.
Install Boltstore and create your first database in under 5 minutes.
Complete REST API documentation with request/response examples.
JavaScript/TypeScript SDK with typed queries and a query builder.
Learn the core concepts behind Boltstore's architecture.
What is Boltstore?
Boltstore is a database platform built on SQLite + Bun. It exposes every database operation through a REST API, making it accessible from any runtime that can make HTTP requests — Node.js, Bun, Deno, browsers, or curl. You can think of it as a self-hostable, managed SQLite with a developer-friendly API and an admin dashboard.
What this is: a database platform. You get SQLite databases over HTTP, multi-database isolation, API keys, an admin dashboard, analytics, import/export, and audit logging. Ship it as a single binary or
bunprocess with a data directory.
What this is not (yet): a Backend-as-a-Service. Boltstore started with BaaS ambitions (RLS, JWT user auth, realtime, offline sync), but the MVP deliberately scopes those out to ship a solid database platform first. If you need BaaS-style features today, build them in your application layer on top of Boltstore's API — or wait for the plugin system.
Core Concepts
Multi-Database Isolation
One Boltstore instance serves multiple isolated SQLite databases. Each database has its own file on disk, its own API keys, its own CORS configuration, and its own config. A key for database foo cannot access database bar. This makes it safe to run multiple projects on the same instance.
SQLite at the Core
At its core, Boltstore is SQLite. Your data is stored in standard SQLite files that you can export, inspect with any SQLite tool, and migrate at any time. No proprietary formats, no vendor lock-in. Full SQL support — transactions, views, indexes, triggers — all available through the raw SQL endpoint.
HTTP API
Every database operation is exposed via REST endpoints under /api. No drivers, no connection strings, no ORM required. Just fetch and go. This makes Boltstore accessible from any programming language or runtime.
Admin Dashboard
A Vue 3 SPA at /dashboard for managing databases, tables, records, API keys, analytics, and settings. Create databases, inspect schema, run queries, rotate keys, and view audit logs — all from the browser.
Quick Start
Install script (macOS / Linux):
curl -fsSL https://boltstore.dev/install.sh | bash boltstore serve --port 8080 --db ./data
npm:
npm install -g boltstore boltstore serve --port 8080 --db ./data
See the Getting Started guide for all installation methods (binary download, Docker, from source).
Then open http://localhost:8080/dashboard and create the first admin account.
Features
| Feature | Status | Description |
|---|---|---|
| SQLite via HTTP REST API | Available | Full CRUD on records, table DDL, filtering, sorting, pagination, and raw SQL |
| Multi-database Support | Available | One instance serves multiple isolated SQLite databases |
| API Key Authentication | Available | Per-database API keys (SHA-256 hashed at rest); admin sessions for dashboard |
| Admin Dashboard | Available | Vue 3 SPA for managing databases, tables, records, keys, and settings |
| Analytics | Available | Query log, storage snapshots, per-database and error dashboards |
| Audit Logging | Available | Admin actions recorded with admin ID and requesting IP |
| Per-database Config | Available | CORS origins, read-only flag, and group per database |
| Import / Export | Available | Export via VACUUM INTO; import .db files with integrity check |
| JavaScript SDK | Available | @boltstore/client with typed records, query builder, and raw SQL |
| Plugin System | Reserved | Plugin interface exists but no plugins are loaded yet |