Python Flask Restful Mongodb Template

screenshot of Python Flask Restful Mongodb Template
flask

A simple Python+Flask RESTful template using MongoDB.

Overview

This product is a Python+Flask RESTful template using MongoDB. It is built with Python 3.9 and includes features such as Flask micro-framework, RESTful API with pagination and Swagger/ReDoc OpenAPI specification, Schemas with marshmallow, ODM with mongoengine, and more. It also includes code coverage tests, linting with various tools, security analysis, dependency and environment management with poetry, pre-commit hooks, and continuous integration with GitHub actions. The template supports PaaS (Heroku) and includes API examples.

Features

  • Bleeding edge Python 3.9 compatibility
  • Flask micro-framework
  • RESTful API with pagination and Swagger/ReDoc OpenAPI specification
  • Schemas with marshmallow
  • ODM with mongoengine
  • Migrations and seeding support with pymongo-migrate
  • 100% code coverage tests using pytest and pytest-cov
  • Linting with pylint, mypy, black, and isort
  • Security analysis with bandit
  • Dependencies and environment management with poetry
  • Pre-commit hooks
  • Continuous Integration with GitHub actions
  • Support for PaaS (Heroku)
  • API examples

Summary

This product is a Python+Flask RESTful template using MongoDB. It provides a powerful and simple way to create RESTful APIs using Flask and MongoDB, with additional features such as pagination, OpenAPI documentation, code coverage tests, linting, security analysis, and more. The template includes detailed documentation and a well-organized file and folder structure to make it easy to customize and adapt to different projects. It supports the latest Python version and offers integration with PaaS platforms like Heroku. Overall, it is a comprehensive solution for building RESTful APIs in Python with Flask and MongoDB.

flask
Flask

Flask is a lightweight and popular web framework for Python, known for its simplicity and flexibility. It is widely used to build web applications, providing a minimalistic approach to web development with features like routing, templates, and support for extensions.

template
Templates & Themes

A template or theme refers to a pre-designed layout or structure that provides a basic framework for building a specific type of application or website. It typically includes good design, placeholder content and functional features, allowing developers to customize and fill in the details according to their specific needs.