New in v0.27 Read workers take connections themselves on Linux
SELF-HOSTED · SINGLE BINARY · OPEN SOURCE

Your whole backend.
One file.

Collections, REST, auth, realtime, files, hooks, queues and MCP for AI agents. Drop it on a server and run it.

curl -fsSL https://get.vaultbase.dev | sudo sh
EXECUTABLE
1
BINARY
~90 MB
PER MONTH VPS
$5
SERVER-SIDE TESTS
1,932
01 / Why

Three things nothing else does at once.

One binary.

Built with bun build --compile for Linux, macOS and Windows. No native deps, no sidecar, no companion daemon.

Real SQL tables.

Every collection is a real table: vb_posts, vb_users. SQLite by default (open it with sqlite3), Postgres (beta) when you outgrow the box. Index it. Migrate it.

Logic in the browser.

Hooks, routes, cron and queue workers, written in the admin UI with autocomplete typed to your real schema. Save it. The next request runs it.

02 / Measured, not projected

One small box, zero errors.

A 4 vCPU VPS running the default install behind nginx. Measured over the internet against a 100,000-record collection, re-run before every release.

1,200+ req/s

record reads, realistic mix

3,000+ req/s

single-record fetches

1,600+ req/s

record writes

1,000 req/s

mixed, 80 % reads · 20 % writes

Every figure is a sustained rate with no failed request and p95 under 400 ms end to end, round trip included. Setup, method and scripts: how we measure →

03 / Replaces

Six services at $140 a month. Or one $5 box.

BEFORE · 6 SERVICES
$25/modatabase$23/moauth$49/morealtime$8/mofiles$15/mohost$20/mojobs
Managed database $25/mo
Auth0 / Clerk $23/mo
S3 + signed URLs $8/mo
Pusher / Ably $49/mo
Inngest / Trigger.dev $20/mo
Backend host $15/mo
Total $140/mo
AFTER · 1 BINARY
SQLiteAuthFilesRealtimeHooksQueueMCP./vaultbase$5/mo
./vaultbase
  • SQLite
  • Auth
  • Files
  • Realtime
  • Hooks
  • Queue
  • MCP
$5/mo VPS. One process, one port, and one folder you can scp as a backup.
04 / In the box

Eight systems. Zero add-ons.

No plugins, no Pro tier. All of it ships in v0.27.1.

16 FIELD TYPES · 3 COLLECTION KINDS

Collections + REST

Real SQL tables with typed, validated fields. REST with filter, sort, expand and projection. ETag optimistic concurrency. Edit a field and get an ALTER-style schema diff.

  • relation · select · json · file
  • editor · geoPoint · vector
  • base · auth · view
  • ETag-aware writes
postsvb_posts · 100k rowsclient
GET /api/v1/posts
?filter=status="published"
&sort=-created
&expand=author
&fields=id,title,author.name
05 / Admin UI

Schema, rules and code. Live.

No migrations folder. No redeploy. Edit, save, done.

06 / Compare

How it stacks up.

Built for solo devs and small teams on one host. If you need multi-region, use something else.

Vaultbase PocketBaseSupabaseFirebase
Single binary, self-hosted Yes (Supported) Yes (Supported) No (Not supported) No (Not supported)
Database SQLite or Postgres (Supported) SQLite only (Partial) Postgres (Supported) Firestore (NoSQL) (Partial)
Logic editable in the browser Yes (Supported) File-based (Not supported) Edge Fns (Partial) Deploy only (Not supported)
Queues + cron built in Native (Supported) Cron only (Partial) Extensions (Partial) Cloud Tasks (Partial)
Realtime WS + SSE (Supported) SSE only (Partial) WebSocket (Supported) Proprietary (Supported)
Record history + restore Yes (Supported) No (Not supported) DIY (Not supported) No (Not supported)
First-party MCP server Yes (Supported) No (Not supported) No (Not supported) No (Not supported)
Open source MIT (Supported) MIT (Supported) Apache 2.0 (Supported) Proprietary (Not supported)
Multi-region No (Not supported) No (Not supported) Yes (Supported) Yes (Supported)
07 / Install

Running in under a minute.

First run opens a setup wizard that creates your admin account.

ONE-SHOT · SIGNATURE-VERIFIED
$ curl -fsSL https://get.vaultbase.dev | sudo sh -s -- --verify-sig
✓ Latest release: v0.27.1
✓ SHA-256 verified
✓ Cosign signature verified (Sigstore Fulcio)
✓ Installed /usr/local/bin/vaultbase
# Linux · macOS · needs cosign on PATH · systemd service on Linux
WINDOWS · POWERSHELL
> irm https://get.vaultbase.dev/install.ps1 | iex
✓ Latest release: v0.27.1
✓ SHA-256 verified
✓ Installed %LOCALAPPDATA%\Programs\Vaultbase
# no admin rights · adds vaultbase to your PATH
FROM SOURCE · BUN
$ bun install
$ bun run build  # → ./vaultbase
$ ./vaultbase    # → :8091
# open localhost:8091/_/ → setup wizard
08 / Architecture

One process. Your data is files.

TypeScript end to end. No second asset server, no native module.

INBOUND
HTTP · :8091
WebSocket · /realtime
Admin UI · /_/
./vaultbase ~90 MB
04storagebun:sqlite · files · logs03enginehooks · queues · cron02auth + rulesoauth2 · jwt · aes-gcm01edgerest · realtime · admin · mcp
  • bun
  • elysia
  • bun:sqlite
  • Bun.sql
  • drizzle
  • react 19
  • monaco
  • queue engine
  • oauth2 · jwt
  • aes-gcm
ON DISK
data.db
uploads/
logs/*.jsonl
NOT FOR V1.0
  • Multi-region deployments
  • Sharding
  • A managed cloud (it is on the roadmap for later)
  • 100k+ concurrent connections

Starts as one file on one box. Outgrow it, and point it at Postgres (beta) to run several servers. Need more than that from your backend? Vaultbase isn't for you, by design.

Own your backend.

Download v0.27.1, run ./vaultbase, take your data with you whenever you want.