// the find
jowilf/starlette-admin
Fast, beautiful and extensible administrative interface framework for FastApi & Starlette applications
starlette-admin is an admin panel generator for FastAPI/Starlette apps, in the same vein as Flask-Admin or Django admin but built for the async ecosystem. It's aimed at teams who need CRUD screens over their existing SQLAlchemy, SQLModel, Tortoise, Beanie, or MongoEngine models without hand-rolling a backoffice UI.
Backend support is genuinely broad — five ORMs/ODMs out of the box plus a documented path to plug in a custom data source via BaseModelView, which is more coverage than most admin frameworks bother with. Import/export goes beyond the usual CSV dump: it supports Excel and JSON too, and import has dry-run validation before committing rows, which is the kind of detail that saves someone from a bad bulk load in production. The nested AND/OR filter builder and inline editing for related models are non-trivial features that a lot of competitors skip entirely.
At ~1000 stars for a project claiming five backend integrations, the surface area is large relative to the community verifying each path — SQLAlchemy and SQLModel are probably well-exercised, but Tortoise/Beanie/MongoEngine support is likely thinner in practice. The quickstart passes secret_key="change-me" directly in code with no callout about loading it from env vars, which is a bad habit to model in a security-sensitive component like an admin panel. There's no mention in the README of row-level or object-level permissions — auth looks like it's pluggable at the all-or-nothing level, so anyone needing per-record access control will have to build that themselves. Also nothing about migration/versioning behavior when your underlying models change shape, which matters a lot for a tool whose whole job is reflecting your schema.