I released DBWarden 0.6 yesterday. Here is what it does.
https://github.com/emiliano-gandini-outeda/DBWarden
DBWarden is a database toolkit for FastAPI and SQLAlchemy. Migrations, async sessions, startup validation, and health checks. One config call. Zero boilerplate.
Most migration setups spread config across multiple files, multiple abstractions, and multiple sources of truth. DBWarden collapses all of that into a single database_config() call. That one call drives your sessions, your health checks, and your migration state. Nothing else to configure.
Your migrations are plain SQL files. No DSL to learn. No auto-generated Python to decode. You write the SQL, you read the SQL, and that is exactly what runs against your database. What you get:
- One config call for everything
- Plain SQL migrations with rollback included by default
- Async session dependency ready to inject with get_session()
- A mountable health router with DBWardenHealthRouter()
- A lifespan helper with migration_context()
- Dev mode: SQLite locally, PostgreSQL in production, no changes to your migration files
Supported databases: PostgreSQL, MySQL, MariaDB, SQLite, ClickHouse.
Three commands to get started: dbwarden init dbwarden make-migrations "create users table" dbwarden migrate Done. Your schema is versioned, reviewable, and reversible.
No wrappers, no hidden state.
MIT licensed. Actively maintained. Source in this repo.