SANDEEPGH / pyflask-microservice-base

🗼 An "optionally opinionated and structured" flask boilerplate application for jump-starting flask development

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

pyflask-microservice-base

An "optionally opinionated and structured" flask boilerplate microservice for jump-starting development

Built with Python Flask License WIP

Tools

Min Python Version 3.8+ Code style: black Static Analysis: flake8 Cyclomatic Complexity: radon Imports: isort Static Typing: mypy Security: bandit pre-commit API Specs

Usage Guide

This is a template project hosted on GitHub which can be used to create new repositories.

Steps for creating boilerplate project in GitHub

  1. Create a new repository named "my-pyflask-project" using this template repository *
  2. git clone https://www.github.com/username/my-pyflask-project.git
  3. cd my-pyflask-project
  4. Create and activate conda environment conda activate my-conda-venv **
  5. make setup : Use pip-tools, pip-compile, pip install to setup python packages

* GitHub Guide: Creating a repository from a template
** Guide to Conda environment

Make Guide

Type make help for available commands

Linting Guide

make format : Format and fix python code with black, isort, autoflake

make lint : Run static analysis with flake8, radon, mypy and bandit

Documentation

Flasgger docs can be found at http://0.0.0.0:8420/api/v1/pyflask-service/swagger

API specs can be found at http://0.0.0.0:8420/api/v1/pyflask-service/swagger_spec

Flasgger UI version: v2 | OpenAPI version: 2

Development Setup

To be updated

Contributing

TODO

  • Swagger support
  • Update linting documentation
  • Introduction of testing tools
  • Testing tools documentation
  • Version handling by tbump
  • Add CoC, Contribution guidelines, PR and issue

About

🗼 An "optionally opinionated and structured" flask boilerplate application for jump-starting flask development

License:MIT License


Languages

Language:Python 55.6%Language:Makefile 43.1%Language:Shell 1.3%