fastapi-admin-panel
Auto-generated admin panel for FastAPI + SQLAlchemy — like Django Admin
The Problem
Django has a built-in admin panel. FastAPI doesn't. You end up writing CRUD endpoints by hand for every model.
The Solution
pip install fastapi-admin-panel
from fastapi_admin import AdminPanel
admin = AdminPanel(title="My Admin", get_db=get_db)
admin.register(User, list_columns=["id", "email", "role", "is_active"])
admin.register(Transaction, list_columns=["id", "amount", "status", "created_at"])
app.include_router(admin.router, prefix="/admin")
Visit /admin and you get a dark-themed dashboard with:
- Model list with pagination
- Detail view for each record
- Delete endpoint
- Auto-detected columns from SQLAlchemy model
Features
| Feature | Description |
|---|---|
| Auto CRUD | List, detail, delete from model inspection |
| HTML Dashboard | Dark-themed responsive admin UI |
| Pagination | Automatic page navigation |
| Custom columns | Choose which columns to display |
| Custom names | Rename models in the UI |
| Multiple models | Register as many as you need |
| No dependencies | Only needs FastAPI + SQLAlchemy |
API Endpoints Generated
For each registered model (e.g. users):
| Method | Path | Description |
|---|---|---|
| GET | /admin/ |
Dashboard index |
| GET | /admin/users |
Paginated HTML list |
| GET | /admin/users/{id} |
JSON detail |
| DELETE | /admin/users/{id} |
Delete record |
License
MIT
Release files for fastapi-admin-panel 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| fastapi_admin_panel-0.1.0.tar.gz | 5.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| fastapi_admin_panel-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 10.9 kB
Release files / fastapi_admin_panel-0.1.0.tar.gz
| Download URL | fastapi_admin_panel-0.1.0.tar.gz |
|---|---|
| Size | 5.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e63dd63ce936013072841febca626a6786bc08f2d9ba0b034ccfca627557e505
|
|
BLAKE2b-256 checksum How to use checksums |
e6ed44367a7eab9c8ce05a3c370910398d0435db4b6bc68c890bc5a2119d0688
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.5
|
Release files / fastapi_admin_panel-0.1.0-py3-none-any.whl
| Download URL | fastapi_admin_panel-0.1.0-py3-none-any.whl |
|---|---|
| Size | 5.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b324fbbf298b90b0d1d9b73d97b26fd425ea552df69cfab5afebb9b97da8969a
|
|
BLAKE2b-256 checksum How to use checksums |
9cf96cf7ee2542643a7dd56bf69f83ba2ed02e62602f6c98dfa18b57700eb83b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.5
|