
Template details
fastapi-admin
A fast admin dashboard based on FastAPI and TortoiseORM with tabler UI, inspired by Django admin.
About this template
fastapi-admin is an open-source admin dashboard for FastAPI applications, built on TortoiseORM and the tabler UI, that generates a web-based management interface from your database models.
What is fastapi-admin?
fastapi-admin is a Python package that provides a ready-made admin dashboard for FastAPI applications, using TortoiseORM for database interaction and the tabler UI for the frontend. It is inspired by Django admin, meaning it auto-generates CRUD interfaces for your models. The project is maintained by fastapi-admin on GitHub, and the current version is distributed via PyPI with the command pip install fastapi-admin.
Key Features
- Framework stack — Built specifically for FastAPI with TortoiseORM as the ORM layer, so it fits projects already using those tools.
- Tabler UI — The frontend uses the tabler dashboard UI kit, providing a modern, responsive interface without requiring a separate frontend build step.
- Django-admin style — Models can be registered to get automatic list, create, update, and delete views, similar to Django's admin site.
- Easy installation — Install with a single pip command; the only external service required is Redis.
- Configuration via environment — The setup uses a
.envfile withDATABASE_URLandREDIS_URLvariables; the example uses MySQL and a local Redis. - Demo instances — A live demo is available at fastapi-admin.long2ice.io/admin/login with credentials admin / 123456, and a pro version demo at fastapi-admin-pro.long2ice.io.
- First-admin bootstrap — Visiting
/admin/initon a fresh instance creates the initial administrator account. - Multilingual documentation — The README is offered in English, Chinese, Korean, and Japanese, with full docs at fastapi-admin-docs.long2ice.io.
Who is it for?
- FastAPI developers — Quickly add a password-protected admin area to an existing FastAPI service without building a separate frontend.
- Teams using TortoiseORM — Projects that already model their data with TortoiseORM can expose those models to non-technical staff through generated CRUD screens.
- Internal tool builders — Instead of hand-crafting admin pages for every table, developers can point the dashboard at their database and get editable views in minutes.
What can you do with it?
- Admin CRUD generation: Register your TortoiseORM models and get list, detail, create, and edit pages with minimal code.
- Database management from a browser: Use the login-protected dashboard to inspect and modify records, which is useful for support teams that need to fix data without writing SQL.
- Deploy behind Docker: The repository includes a docker-compose setup that brings up the app with MySQL and Redis, so you can run the example stack locally with one command.
How does it work?
After installing with pip install fastapi-admin, clone the repo, create a .env file with DATABASE_URL and REDIS_URL, then run docker-compose up -d --build. Visit http://localhost:8000/admin/init to create the first admin user, then log in at /admin/login.
Alternatives
- Django admin — Built into the Django framework, it provides a similar auto-generated admin interface but requires using Django as the web framework.
- Flask-Admin — A comparable admin framework for Flask applications, using a different ORM and UI approach.
FAQ
Is fastapi-admin free?
Yes, the project is open source under the Apache-2.0 license, so it is free to use and modify. A separate pro version exists and has its own online demo, but no pricing details are published on the README.
Does fastapi-admin require Redis?
Yes, Redis is listed as a requirement. The configuration expects a REDIS_URL in the .env file, and the docker-compose setup includes a Redis service.
What databases does it support?
The README example uses MySQL via DATABASE_URL=mysql://root:123456@127.0.0.1:3306/fastapi-admin. Because the ORM is TortoiseORM, the actual database support follows what TortoiseORM supports, but the visible example is MySQL.
How do I create an admin user?
On a fresh installation, visit the /admin/init endpoint in your browser and follow the prompts to create the first admin account. The live demo uses username admin and password 123456.














