snapshotdb
Branch your database like code. An isolated, writable copy of production in seconds — across four engines, on infrastructure you own. Open source, self-hosted, Apache-2.0.
snapshotdb keeps a live replica of your production database on a server you run, then cuts copy-on-write branches off it. Each branch is a real, writable database with its own port and its own generated credentials. Unchanged pages share storage; database startup and preparation can still take time.
What it does
- Replica once, branch forever. One initial copy of production; use copy-on-write clones and prepared pools for fast branches.
- Any engine. Postgres, MySQL, MongoDB, and SQLite, branched the same way.
- Separate branch credentials. Branch writes do not replicate back to production. Protect copied data and enforce network isolation separately.
- Branch from any branch. Fork a branch of a branch, like git.
- Prepared pools. Prepare running capacity before allocation; see the measured claim times and limitations.
How it compares to hosted branching
The console defaults to SnapshotDB Cloud and can connect to your own server in BYOC mode. The CLI requires your own server URL and admin token; GitHub CLI sign-in does not connect it to a hosted workspace. PostgreSQL, MySQL, and MongoDB use replication; SQLite starts from a server-side file or an empty database. Hosted console sessions use separate workspaces with plan limits and Dodo Payments billing.
Explore
- Quickstart and Install / Server deployment
- Connect a database: overview, Postgres, RDS, Supabase, MySQL, MongoDB
- Concepts: Architecture, Security
- Reference: CLI, Configuration, REST API, FAQ
- Workflows: AI agents, CI/CD, Local development