Flask App Builder
Simple and rapid application development framework, built on top of Flask. includes detailed security, auto CRUD generation for your models, google charts and much more.
Extensive configuration of all functionality, easily integrate with normal Flask/Jinja2 development.
Take a look at installation, quick how to tutorials, API reference etc: Documentation
Checkout installation video on YouTube
Lots of examples and a live quick how to Demo from the docs (login has guest/welcome).
Package Version
New 1.12.5.
BREAKING CHANGES relative to 1.12.0: we have bumped flask-login version, this causes breaking changes on the API relative to this package.
Flask-AppBuilder version <= 1.11.1 was using Flask-Login 0.2.X.
Flask-AppBuilder version > 1.12.0 is using Flask-Login > 0.3.X.
The following methods from Flask-Login changed to properties:
is_anonymous() -> is_anonymous
is_active() -> is_active
is_authenticated() -> is_authenticated
Take at look at: https://github.com/maxcountryman/flask-login/blob/master/CHANGES#L49
Also read the Versions for further detail on what changed.
Fixes, Bugs and contributions
You’re welcome to report bugs, propose new features, or even better contribute to this project.
The tests can be run locally (provided Docker and Docker-Compose are installed) by running docker-compose run –rm test
Or, if you have mongodb and the requirements installed locally- setup.py test
Projects/Organizations using FAB
If you would like to share your project, or let everyone know that you’re using FAB on your organization please submit a PR or send me an email with the details.
Projects:
Superset - a data exploration platform designed to be visual, intuitive, and interactive
Organizations:
Airbnb
Miniclip
EuroBIC
Includes:
- Database
SQLAlchemy, multiple database support: sqlite, MySQL, ORACLE, MSSQL, DB2 etc.
Partial support for MongoDB using MongoEngine.
Multiple database connections support (Vertical partitioning).
Easy mixin audit to models (created/changed by user, and timestamps).
- Security
Automatic permissions lookup, based on exposed methods. It will grant all permissions to the Admin Role.
Inserts on the Database all the detailed permissions possible on your application.
Public (no authentication needed) and Private permissions.
Role based permissions.
Authentication support for OAuth, OpenID, Database, LDAP and REMOTE_USER environ var.
Support for self user registration.
- Views and Widgets
Automatic menu generation.
Automatic CRUD generation.
Multiple actions on db records.
Big variety of filters for your lists.
Various view widgets: lists, master-detail, list of thumbnails etc
Select2, Datepicker, DateTimePicker
Related Select2 fields.
Google charts with automatic group by or direct values and filters.
AddOn system, write your own and contribute.
- Forms
Automatic, Add, Edit and Show from Database Models
Labels and descriptions for each field.
Automatic base validators from model’s definition.
Custom validators, extra fields, custom filters for related dropdown lists.
Image and File support for upload and database field association. It will handle everything for you.
Field sets for Form’s (Django style).
- i18n
Support for multi-language via Babel
Bootstrap 3.1.1 CSS and js, with Select2 and DatePicker
Font-Awesome icons, for menu icons and actions.
Some pictures
Login page (with AUTH_DB)
Login page (with AUTH_OAUTH)
Security
Lists:
List contacts example
List Group example with search
Charts:
Group by pie chart
Direct time chart
Group by time chart
Depends on:
flask
click
colorama
flask-sqlalchemy
flask-login
flask-openid
flask-wtform
flask-Babel
Metadata
Release files for Flask-AppBuilder-hack 1.12.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| Flask-AppBuilder-hack-1.12.5.tar.gz | 1.5 MB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| Flask_AppBuilder_hack-1.12.5-py2-none-any.whl | Python 2 | none | any | Details |
Total release size: 3.1 MB
Release files / Flask-AppBuilder-hack-1.12.5.tar.gz
| Download URL | Flask-AppBuilder-hack-1.12.5.tar.gz |
|---|---|
| Size | 1.5 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
be645b1a9917cf3cc05e6f2243e78d744613a4c33bedaacf485a4780a1e8e4f1
|
|
BLAKE2b-256 checksum How to use checksums |
210b74d49e508484bac202c4c9df7e452dcca0413ae5cfc422269549690f8316
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.8.0 pkginfo/1.9.6 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.10.1 urllib3/1.26.15 tqdm/4.64.1 importlib-metadata/4.8.3 keyring/23.4.1 rfc3986/1.5.0 colorama/0.4.5 CPython/3.6.9
|
Release files / Flask_AppBuilder_hack-1.12.5-py2-none-any.whl
| Download URL | Flask_AppBuilder_hack-1.12.5-py2-none-any.whl |
|---|---|
| Size | 1.6 MB |
| Tags | Python 2 |
|
SHA-256 checksum How to use checksums |
94ff304db4c74876bd1f6a3e48e530216803d3c77249dfa4dbb554e0f56dcc86
|
|
BLAKE2b-256 checksum How to use checksums |
3c9703ecbcd590fce264597d1f9b3e8038bee83f1ef2373e7e97bb7f6747496b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.8.0 pkginfo/1.9.6 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.10.1 urllib3/1.26.15 tqdm/4.64.1 importlib-metadata/4.8.3 keyring/23.4.1 rfc3986/1.5.0 colorama/0.4.5 CPython/3.6.9
|
Security for Flask-AppBuilder-hack 1.12.5
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.