sqladmin
SQLAlchemy admin for FastAPI and Starlette
What it is and what it does
SQLAdmin is a web-based admin interface generator for SQLAlchemy models that works with Starlette applications. It automatically creates CRUD pages, filtering, and model management views without requiring you to write custom admin code. The interface integrates directly with your existing SQLAlchemy models and database engine.
The package handles both synchronous and asynchronous SQLAlchemy engines and supports SQLModel. Optional extras enable session-backed authentication and internationalization. You define admin views by subclassing ModelView, specify which columns to display, and register them with the Admin instance—the interface is then available at /admin.
Use it for:
- Quickly add a management interface to a Starlette application without building custom admin pages
- Enable non-technical users to view, create, edit, and delete database records through a web UI
- Prototype or demo a data-driven application with minimal admin scaffolding code
- Manage SQLAlchemy model instances in production with built-in filtering and column selection
- Support both sync and async database operations in a single admin interface
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Generates a web-based admin interface for SQLAlchemy models, integrating with Starlette to provide CRUD operations, filtering, and model management without writing custom views.
Yes. Active maintenance, low install friction, no known vulnerabilities, and permissive licensing make this a safe choice. Install it if you need a functional admin interface for SQLAlchemy models in Starlette without building custom views. Suitable for prototypes, internal tools, and production dashboards.
Install
sqladmin on PyPI
pip
pip install sqladminuv
uv add sqladminpoetry
poetry add sqladminInstalling sqladmin
Before you install
Low friction install with five runtime dependencies. Actively maintained with a release 8 days ago and 2812 repository stars. Supports Python 3.10, 3.11, 3.12, 3.13, 3.14.
License in practice
BSD-3-Clause permissive license allows commercial and private use with minimal restrictions; attribution required.
Quickstart
pip install sqladmin
from sqladmin import Admin, ModelView
from starlette.applications import Starlette
from sqlalchemy import create_engine
app = Starlette()
admin = Admin(app, create_engine('sqlite:///example.db'))
class UserAdmin(ModelView, model=User):
column_list = [User.id, User.name]
admin.add_view(UserAdmin)
Requires SQLAlchemy models and a Starlette application instance; optional extras (auth, i18n) need itsdangerous or babel respectively.
Verify before relying
- Performance characteristics with large datasets or complex relationships
- Customization depth for advanced UI/UX requirements beyond the default interface
- Full scope of supported SQLAlchemy features and edge cases
Package facts
| License | BSD-3-Clause (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 5 — starlette, wtforms, jinja2, python-multipart, sqlalchemy |
| Maintenance | actively maintained — 8 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 948,826/month — #4,660 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: sqladmin-0.31.0-py3-none-any.whl
Keywords: sqlalchemy, fastapi, starlette, admin
Tags
More WWW/HTTP packages
urllib3 is an HTTP client library that provides…
permissive · top 100 on PyPI
requestsRequests is a Python HTTP library that…
permissive · top 100 on PyPI
h11h11 is a pure-Python HTTP/1.1 protocol…
permissive · top 100 on PyPI
httpxHTTPX is a fully featured HTTP client library…
permissive · top 100 on PyPI
httpcoreA minimal low-level HTTP client library that…
permissive · top 100 on PyPI
aiohttpaiohttp is an async HTTP client and server…
permissive · top 100 on PyPI
sqlmodelSQLModel combines SQLAlchemy and Pydantic to…
permissive · top 5,000 on PyPI
starlette-adminStarlette-admin provides a ready-made admin…
permissive · top 15,000 on PyPI
Flask-AdminFlask-Admin adds a customizable admin interface…
permissive · top 5,000 on PyPI
piccolo-adminPiccolo Admin is a web-based admin interface…
permissive · top 15,000 on PyPI
sqlalchemy-reprAdds automatic, human-readable repr() output to…
unclear · top 15,000 on PyPI
WTForms-SQLAlchemyGenerates WTForms forms from SQLAlchemy models…
permissive · top 15,000 on PyPI
WTForms-AlchemyAutomatically generates WTForms form classes…
permissive · top 15,000 on PyPI
advanced-alchemyAdvanced Alchemy provides sync and async…
permissive · top 15,000 on PyPI
fastcrudFastCRUD provides async CRUD operations and…
permissive · top 15,000 on PyPI
sqlacodegenReads an existing database schema and generates…
permissive · top 5,000 on PyPI