This is a CookieCutter template directory for Fedora Infrastructure webapps that are based on Flask.
Use it with:
cookiecutter gh:fedora-infra/cookiecutter-flask-webapp
It will ask you for the application name and some other variables, and will create the package structure for you.
Here are the libraries and services that are integrated:
- Database support with SQLAlchemy & Alembic
- OpenShift support with S2I
- Formatting with Black, isort and pyupgrade
- Unit tests with Pytest, Coverage & Tox
- Security with Flask-Talisman & Bandit
- Documentation with Sphinx
- Various checks like flake8, liccheck, and rstcheck
- Mergify
- Github CI and CentOS CI
- Renovate
- Pre-Commit
There are some checks to make sure the templated app pass its own unit tests. You can run those checks with:
pytest -s tests