Metadata-Version: 2.1
Name: Flask-AppBuilder
Version: 4.5.3
Summary: 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.
Home-page: https://github.com/dpgaspar/flask-appbuilder/
Author: Daniel Vaz Gaspar
Author-email: danielvazgaspar@gmail.com
License: BSD
Platform: any
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: Web Environment
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: ~=3.7
Description-Content-Type: text/x-rst
License-File: LICENSE
Requires-Dist: apispec[yaml] <7,>=6.0.0
Requires-Dist: colorama <1,>=0.3.9
Requires-Dist: click <9,>=8
Requires-Dist: email-validator >=1.0.5
Requires-Dist: Flask <3.0.0,>=2
Requires-Dist: Flask-Babel <3,>=1
Requires-Dist: Flask-Limiter <4,>3
Requires-Dist: Flask-Login <0.7,>=0.3
Requires-Dist: Flask-SQLAlchemy <3,>=2.4
Requires-Dist: Flask-WTF <2,>=0.14.2
Requires-Dist: Flask-JWT-Extended <5.0.0,>=4.0.0
Requires-Dist: jsonschema <5,>=3
Requires-Dist: marshmallow <4,>=3.18.0
Requires-Dist: marshmallow-sqlalchemy <0.29.0,>=0.22.0
Requires-Dist: python-dateutil <3,>=2.3
Requires-Dist: prison <1.0.0,>=0.2.1
Requires-Dist: PyJWT <3.0.0,>=2.0.0
Requires-Dist: SQLAlchemy <1.5
Requires-Dist: sqlalchemy-utils <1,>=0.32.21
Requires-Dist: WTForms <4
Requires-Dist: werkzeug <4
Provides-Extra: jmespath
Requires-Dist: jmespath >=0.9.5 ; extra == 'jmespath'
Provides-Extra: oauth
Requires-Dist: Authlib <2.0.0,>=0.14 ; extra == 'oauth'
Provides-Extra: openid
Requires-Dist: Flask-OpenID <2,>=1.2.5 ; extra == 'openid'
Provides-Extra: talisman
Requires-Dist: flask-talisman <2.0,>=1.0.0 ; extra == 'talisman'
Flask App Builder
=================
.. image:: https://github.com/dpgaspar/Flask-AppBuilder/workflows/Python/badge.svg
:target: https://github.com/dpgaspar/Flask-AppBuilder/actions
.. image:: https://img.shields.io/pypi/v/Flask-AppBuilder.svg
:alt: PyPI
:target: https://pypi.org/project/Flask-AppBuilder/
.. image:: https://img.shields.io/badge/pyversions-3.8%2C%203.9%2C%203.10%2C%203.11%2C%203.12-blue.svg
:target: https://www.python.org/
.. image:: https://codecov.io/github/dpgaspar/Flask-AppBuilder/coverage.svg?branch=master
:target: https://codecov.io/github/dpgaspar/Flask-AppBuilder
.. image:: https://img.shields.io/badge/code%20style-black-000000.svg
:target: https://github.com/psf/black
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.
- Documentation: `Documentation `_
- Mailing list: `Google group `_
- Chat: `Gitter `_
- Examples: `examples `_
Checkout installation video on `YouTube `_
Quick how to `Demo from the docs `_ (login has guest/welcome).
Change Log
----------
`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.
`Issues, bugs and new features `_
`Contribute `_
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.
- CRUD REST API
- Automatic CRUD RESTful APIs.
- Internationalization
- Integration with flask-jwt-extended extension to protect your endpoints.
- Metadata for dynamic rendering.
- Selectable columns and metadata keys.
- Automatic and configurable data validation.
- 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)
.. image:: https://raw.github.com/dpgaspar/flask-AppBuilder/master/images/login_db.png
:width: 480px
:target: https://raw.github.com/dpgaspar/flask-AppBuilder/master/images/login_db.png
Login page (with AUTH_OAUTH)
.. image:: https://raw.github.com/dpgaspar/flask-AppBuilder/master/images/login_oauth.png
:width: 480px
:target: https://raw.github.com/dpgaspar/flask-AppBuilder/master/images/login_oauth.png
Security
.. image:: https://raw.github.com/dpgaspar/flask-AppBuilder/master/images/security.png
:width: 480px
:target: https://raw.github.com/dpgaspar/flask-AppBuilder/master/images/security.png
Lists:
List contacts example
.. image:: https://raw.github.com/dpgaspar/flask-AppBuilder/master/images/contact_list.png
:width: 480px
:target: https://raw.github.com/dpgaspar/flask-AppBuilder/master/images/contact_list.png
List Group example with search
.. image:: https://raw.github.com/dpgaspar/flask-AppBuilder/master/images/group_list.png
:width: 480px
:target: https://raw.github.com/dpgaspar/flask-AppBuilder/master/images/group_list.png
Charts:
Group by pie chart
.. image:: https://raw.github.com/dpgaspar/flask-AppBuilder/master/images/grouped_chart.png
:width: 480px
:target: https://raw.github.com/dpgaspar/flask-AppBuilder/master/images/grouped_chart.png
Direct time chart
.. image:: https://raw.github.com/dpgaspar/flask-AppBuilder/master/images/direct_chart.png
:width: 480px
:target: https://raw.github.com/dpgaspar/flask-AppBuilder/master/images/chart_time1.png
Group by time chart
.. image:: https://raw.github.com/dpgaspar/flask-AppBuilder/master/images/chart_time2.png
:width: 480px
:target: https://raw.github.com/dpgaspar/flask-AppBuilder/master/images/chart_time2.png
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
- `Airflow `_ - a platform to programmatically author, schedule, and monitor workflows.
Organizations:
- Miniclip
- EuroBIC
- `On Beat Digital `_
Depends on:
-----------
- flask
- click
- colorama
- flask-sqlalchemy
- flask-login
- flask-openid
- flask-wtform
- flask-Babel