This is an opinionated Flask based project. It is meant to be used with Kubernetes type orchestration solutions as well as API Gateway solutions that will use Open API 2.0 specification(formerly known as Swagger).
Install cookiecutter:
pipenv install --dev --three cookiecutter
Create your application from this template:
cookiecutter https://github.com/JohnRoach/cookiecutter-flask-swagger-uwsgi.git
All set! Run the application:
cd yourapplication
make run
And then open it at http://127.0.0.1:3040/
Included:
-
production-ready Connexion application: root package, sample static resource, sample template and an index view, as per Larger Applications
-
Docker file with uwsgi setup
-
setuptools configuration to package and release the application, as well as to develop locally, as per Deploying with Setuptools
-
configuration system, as per Configuration Handling
-
basic logging configuration, as per Logging to a File
-
sample test and configuration necessary to run the tests, as per The Testing Skeleton
-
Makefile with few typical tasks automated (see generated README for details)
Please read the CONTRIBUTING.md document. If you do a change, use make test
from root directory to test the updated template.
- Fix issue with swagger-ui
- Nail down the uwsgi configurations to be more production ready
- Harden the docker container
- Find a cross-platform replacement to a Makefile