Flask Rest Api Template

screenshot of Flask Rest Api Template

Template de API Rest desarrollada en Python con el framework Flask. El template cubre la de gestión de usuarios y tokens jwt para autenticación.

Overview

The Flask API REST Template is a template for building REST APIs in Python using the Flask framework. It includes features for user management and JWT token authentication. The template supports four environments: develop, testing, local, and production. In the local environment, Docker is used to create a setup with multiple services such as Flask API, PostgreSQL database, Swagger UI, Nginx reverse proxy, and cron for automatic database backups. The production environment utilizes the Heroku platform for deployment.

Features

  • Web Framework: Flask
  • ORM: Flask-sqlalchemy
  • Swagger: Swagger-UI
  • Authentication: JSON Web Token
  • Serialization, Deserialization, and Validation: Marshmallow with flask-marshmallow module
  • Database Migration: Flask-migrate
  • Authentication: Flask-jwt-extended
  • Environment Manager: Pipenv
  • Containerization: Docker and docker-compose
  • Database: PostgreSQL and SQLite
  • Python WSGI HTTP Server: Gunicorn
  • Proxy: Nginx
  • Code Coverage: Coverage
  • Tests: Unittest
  • Deployment Platform: Heroku
  • CI/CD: Github Actions

Summary

The Flask API REST Template is a versatile template for building REST APIs with Flask. It provides various features for user management and authentication. The template supports multiple environments, including local development with Docker containerization and production deployment on the Heroku platform. With its extensive range of technologies and tools, the template offers a comprehensive solution for developing robust and scalable REST APIs.