/ Admin Panels

Simple and extensible administrative interface framework for Flask

Simple and extensible administrative interface framework for Flask


The project was recently moved into its own organization. Please update your references to [email protected]:flask-admin/flask-admin.git.


Flask-Admin is a batteries-included, simple-to-use Flask extension that lets you add admin interfaces to Flask applications. It is inspired by the django-admin package, but implemented in such a way that the developer has total control of the look, feel and functionality of the resulting application.

Out-of-the-box, Flask-Admin plays nicely with various ORM's, including

  • SQLAlchemy,
  • MongoEngine,
  • pymongo and
  • Peewee.

It also boasts a simple file management interface and a redis client console.

The biggest feature of Flask-Admin is flexibility. It aims to provide a set of simple tools that can be used for building admin interfaces of any complexity. So, to start off with you can create a very simple application in no time, with auto-generated CRUD-views for each of your models. But then you can go further and customize those views & forms as the need arises.

Flask-Admin is an active project, well-tested and production ready.


To install Flask-Admin, simply::

pip install flask-admin

Or alternatively, you can download the repository and install manually by doing::

git clone [email protected]:flask-admin/flask-admin.git
cd flask-admin
python setup.py install


Test are run with nose. If you are not familiar with this package you can get some more info from their website <https://nose.readthedocs.io/>_.

To run the tests, from the project directory, simply::

pip install -r requirements-dev.txt

You should see output similar to::

Ran 102 tests in 13.132s


For all the tests to pass successfully, you'll need Postgres & MongoDB to be running locally. For Postgres::

CREATE DATABASE flask_admin_test;

You can also run the tests on multiple environments using tox.