Skip to content
Umair Khan edited this page Mar 7, 2020 · 5 revisions

Flask Boilerplate

A repository with goal to make a flask API developer life easier, thus not only integrates libraries but also covered a simple API implementation.

This is going to help me and others to focus more on API implementation instead of spending their time on setting up project infrastructure.

This project utilizes below libraries,

  1. Flask SqlAlchemy (Wrapper on SqlAlchemy)
  2. Flask Migrate (Wrapper on Alembic)
  3. Flask Manager (Wrapper on Flask Scripts)
  4. Gunicorn (Web Server)

Features

  • Complete end to end implementation of a CRUD user story. (PERSON)
  • It supports environment specific configuration using .env file.
  • Keeps isolation of concern to some extent using layered architecture, and provides place to write new database migrations, new data base models and APIs.
  • Utility methods and base classes for code re-usability.
  • Logging of web request and exceptions.

Future Plans

  • Unit test case library integration.
  • Test coverage status pre-commit hook
  • Integration with pylint as a pre-commit hook
  • Release management e.g. version update
  • Docker based setup [Docker and Docker Compose]
  • Flask CORS integration
  • Flask CSRF integration
  • Authentication and authorization setup using any oauth server e.g. keycloak
  • Integration with swagger
  • Standardized Api request and response formats
Clone this wiki locally