Programmable SQL
Stop writing repetitive scripts. Use variables, loops, and logic (via Minijinja) to generate complex migrations, handle multi-tenancy, and inject external data sources.
Programmable SQL
Stop writing repetitive scripts. Use variables, loops, and logic (via Minijinja) to generate complex migrations, handle multi-tenancy, and inject external data sources.
Component-Based
Treat your database code like app code. Edit Views and Functions in-place within a components/ folder. Spawn handles the history tracking for you.
Reproducible Builds
Like a Cargo.lock for your database. Spawn pins your component versions for every migration, guaranteeing that historical scripts never break even as your schema evolves.
Integrated Testing
Use macros to create reusable data factories directly in SQL. Spin up complex test scenarios with simple, readable logic—no external scripts required.
Regression Assurance
Catch bugs before they merge. Run comprehensive test suites automatically in your CI/CD pipeline to ensure new migrations don’t break existing functionality.
Zero Dependencies
Built in Rust. A single binary that installs in seconds. No JVM, no Perl, no Python virtual environments required. Just curl and go.