Boilerplate setup for webapps, apis and cli applications with flask
Project description
# shift-boiler
![boiler](https://s3-eu-west-1.amazonaws.com/public-stuff-cdn/boiler.png)
Boiler is a best-practices setup of [flask framework](http://flask.pocoo.org/) integrated with a number of libraries to quickly bootstrap app development. You can do console applications, web apps or apis with boiler. It is also a good example of how to set up flask framework for large projects.
Here are some main features all of which are pluggable and optional:
[Click](http://click.pocoo.org/) integration for CLI apps
Web app scaffolding
API app scaffolding and [Restfulness](https://flask-restful.readthedocs.io/)
ORM with [SQLAlchemy](http://www.sqlalchemy.org/)
Database migrations with [Alembic](https://bitbucket.org/zzzeek/alembic)
Entity/model validation framework with [shift-schema](https://github.com/projectshift/shift-schema)
Localization and translations with [Babel](https://pythonhosted.org/Flask-Babel/)
Web forms with [WTForms](https://wtforms.readthedocs.io/en/latest/)
User registration and [authentication](https://flask-login.readthedocs.io/en/latest/) including [OAuth](https://pythonhosted.org/Flask-OAuth/) support for facebook, google, twitter and vk
RBAC and access control with [Principal](http://pythonhosted.org/Flask-Principal/)
Routing with lazy-views and on-demand view import
Set of useful Jinja additions and filters including support for versioned static assets.
All of the features are pluggable and optional. Use whatever you need.
## Ridiculously quick start
Create virtual environment:
` mkdir boiler-testdrive && cd boiler-testdrive virtualenv -p python3 env source env/bin/activate `
Install and run boiler:
` pip install shiftboiler boiler init . boiler dependencies flask ./cli run `
That was quickstart for robots. We also have a [quickstart for humans](docs/quickstart.md), with some further exaplanations.
## Versioning
We loosely follow [semver](https://semver.org/) except we did not have a major release yet to indicate the fact that the is still not entirely production ready. We however did successfully used it in production on multiple occasions for webapps and apis. Just remember to freeze your boiler version in requirements file and expect minor versions to introduce breaking changes.
## Documentation
[Quickstart for humans](docs/quickstart.md)
Full configuration example
[Boiler features](docs/features.md)
Testing: helpers and environment
Working with collections
Working with forms: entity validation and recaptcha
[MacOS: signing python interpreter](docs/sign_python.md)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for shiftboiler-0.4.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 40c9a9cc026b5609014725c76f432dcea5337294e97d29e1a648644a4a299bdd |
|
MD5 | 8082f1fbf7483ff40e588ce6052796d5 |
|
BLAKE2b-256 | eea1ca31f88d1cad53a1e2a2fa48da3ccf4226c2c089a8522e5927782a172a20 |