finds.dev← search

// the find

amisadmin/fastapi-amis-admin

★ 1,559 · Python · Apache-2.0 · updated Dec 2025

FastAPI-Amis-Admin is a high-performance, efficient and easily extensible FastAPI admin framework. Inspired by django-admin, and has as many powerful functions as django-admin.

FastAPI-Amis-Admin is a Django-admin-style backend UI framework that pairs FastAPI with Baidu's Amis (a JSON-driven frontend renderer) to auto-generate CRUD admin panels from SQLAlchemy/SQLModel models. It targets Python developers who want a full admin interface without writing frontend code. The target audience is internal tooling and small-to-medium apps where Django's admin is appealing but the rest of the stack is FastAPI.

Supports all three SQLAlchemy eras (declarative, 2.0 mapped columns, SQLModel) without forcing you to pick one — useful for codebases mid-migration. The separation of amis/crud/admin as distinct layers means you can use just the CRUD router generation without the full admin UI, which is a real escape hatch. Async-first with sync fallback is handled at the ORM layer rather than bolted on. Test coverage is solid — separate test files per feature area, both sync and async CRUD route variants covered.

The frontend renderer is Baidu's Amis, a JSON schema UI library that most Western developers have never heard of and which has sparse English-language community support — debugging a broken Amis component will send you into Chinese docs. The project is primarily maintained by a single author with a Chinese-language community, so English GitHub issues often go unanswered for months. Last commit was December 2025 and activity has slowed significantly compared to 2022-2023. The RBAC/auth story requires a separate package (fastapi-user-auth) that adds another dependency and its own learning curve.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →