← Back to Awesome

Sections

Flask

GitHub repository ↗ synced 2026/8/9

Awesome Flask Awesome

A curated list of awesome things related to Flask.

Flask is a lightweight WSGI web application framework written in Python.

Third-Party Extensions

Admin

Flask-Admin

Functional admin panel that provides a user interface for managing data based on your models.

APIs

Eve

RESTful API framework designed for human beings.

Flask-Classful

Adds support for class-based views for setting up RESTful API route endpoints.

Flask-MongoRest

RESTful API framework wrapped around [MongoEngine](https://github.com/MongoEngine/mongoengine).

Flask-RESTful

Quickly build RESTful APIs.

APIFlask

Integrates marshmallow for validation and serialization, and for OpenAPI generation with Swagger UI.

Connexion

Open source, OpenAPI-based, REST framework built on top of Flask.

Flasgger

OpenAPI and Swagger UI. Builds the API from Flasgger models, marshmallow models, dicts, or YAML files.

Flask-Rebar

Combines Flask, [marshmallow](https://marshmallow.readthedocs.io/), and [OpenAPI](https://www.openapis.org/) for robust REST services.

Flask-RESTX

Community-driven fork of [Flask-RESTPlus](https://flask-restplus.readthedocs.io/) that makes it easy to build and document RESTful APIs with Flask.

flask-smorest

Marshmallow's official Flask REST integration. Uses marshmallow models for request/response validation and serialization, and generates OpenAPI with Swagger UI.

SAFRS: Python OpenAPI & JSON:API Framework

SAFRS, which is an acronym for *S*ql*A*lchemy *F*lask-*R*estful *S*wagger, is meant to help developers create self-documenting JSON APIs for SQLAlchemy database objects and relationships.

RESTful API Support

RESTful API + Swagger/OpenAPI Documentation Support

Swagger/OpenAPI Documentation Support

Auth

Flask-HTTPAuth

Authentication.

Flask-Login

Account management and authentication.

Flask Principal

Authorization.

Flask-Security-Too

Account management, authentication, authorization.

Flask-Session

Session managment.

Flask-SimpleLogin

Authentication.

Flask-User

Account management, authentication, authorization.

Axioms-Flask-Py

OAuth2/OIDC authentication and authorization for Flask APIs. Supports authentication and claim-based fine-grained authorization (scopes, roles, permissions) using JWT tokens.

Flask-JWT

Basic support for working with JWTs.

Flask-JWT-Extended

Advanced support for working with JWTs.

Flask-JWT-Router

Adds authorized routes to a Flask app.

Flask-Praetorian

Authentication and authorization for Flask APIs.

Authlib

Library for building OAuth and OpenID clients and servers.

Authomatic

Framework agnostic library for Python web applications that simplifies authentication and authorization of users via OAuth and OpenID.

Flask-Dance

OAuth support via [OAuthLib](https://oauthlib.readthedocs.io/).

Basic Auth and Session-based (for HTML Endpoints)

Curious about the differences differences between Flask-User and Flask-Security? Review the Flask-User FAQ.

JWT-based (for JSON Endpoints)

OAuth

Cache

Flask-Caching

Caching support.

Data Validation and Serialization

Flask-Marshmallow

Thin integration layer for Flask and marshmallow (an object serialization /deserialization library) that adds additional features to marshmallow.

Flask-Pydantic

[Pydantic](https://github.com/pydantic/pydantic) support.

Databases

Flask-Peewee

Support for Peewee, an ORM and database migration tool.

Flask-Pony

Support for Pony ORM.

Flask-SQLAlchemy

Support for SQLAlchemy, a SQL toolkit and ORM.

Flask-MongoEngine

Bridges Flask and MongoEngine for working with MongoDB.

Flask-PyMongo

Bridges Flask and PyMongo for working with MongoDB.

Flask-Alembic

Configurable [Alembic](https://alembic.sqlalchemy.org/) migration environment around a Flask-SQLAlchemy database for handling database migrations.

Flask-DB

Flask CLI extension that helps you migrate, drop, create and seed your SQL database.

Flask-Migrate

Handles SQLAlchemy database migrations via Alembic.

Flask-Excel

Uses [pyexcel](https://github.com/pyexcel/pyexcel) to read, manipulate, and write data in different Excel formats: csv, ods, xls, xlsx and xlsm.

ORMs

ODMs

Migrations

Curious about the differences between Alembic, Flask-Alembic, Flask-Migrate, and Flask-DB? Review this item from Flask-DB's FAQ.

Other Tools

Developer Tools

Flask-DebugToolbar

Port of Django's debug toolbar for Flask.

Flask-Profiler

Endpoint analyzer/profiler.

Flask-Fixtures

Create database fixtures from JSON or YAML.

Mixer

Object generation tool.

Rollbar

Flask error logging with Rollbar.

Airbrake

Airbrake Flask integration.

Elastic APM Agent

Elastic APM Flask integration.

Flask Monitoring Dashboard

Dashboard for automatic monitoring of Flask web-services.

Sentry Python SDK

Sentry SDK Flask integration.

OpenTelemetry

OpenTelemetry Flask Instrumentation.

Flask-Testing

Unittest extensions.

Pytest-Flask

Pytest support for testing Flask applications.

Debugging

Fixtures

Logging

Monitoring

Tracing

Testing

Email

Flask-Mail

Provides simple email sending capabilities.

Flask-Mailman

A port of `django.mail` for Flask.

Flask-Mail-SendGrid

Provides simple email base on Flask-Mail for sending email by SendGrid.

Forms

Flask-WTF

Integrates Flask with WTForms (provides CSRF protection as well).

Full-text Search

flask-msearch

Full-text search.

Flask-WhooshAlchemy3

Full-text search + Whoosh indexing capabilities for Flask-SQLAlchemy.

SQLAlchemy-Searchable

Provides full-text search capabilities for SQLAlchemy models.

Security

Flask-Argon2

Provides argon2 hashing utilities.

Flask-Bcrypt

Provides bcrypt hashing utilities.

Flask-CORS

Cross Origin Resource Sharing (CORS) handling.

Flask-SeaSurf

Cross-site request forgery (CSRF) prevention.

Flask-Talisman

HTTPS and security headers.

secure

A lightweight library for defining and applying HTTP security headers consistently in Flask applications.

Task Queues

Celery

The most commonly used Python library for handling asynchronous tasks and scheduling.

Dramatiq

Fast and reliable alternative to Celery.

Flask-RQ

[RQ](https://python-rq.org/) (Redis Queue) integration.

Huey

[Redis](https://redis.io/)-based task queue that aims to provide a simple, yet flexible framework for executing tasks.

Utils

Apitally

API monitoring, analytics, and request logging for Flask.

Flask-Babel

Support for internationalization (i18n) and localization (l10n).

Flask-File-Upload

Easy file uploads.

Flask-FlatPages

Provides flat static pages based on text files.

Frozen-Flask

Freezes a Flask application into a set of static files.

Flask-GraphQL

GraphQL support.

Flask-Injector

Adds support for dependency injection.

Flask-Limiter

Rate limiting features to Flask routes.

Flask-Moment

Moment.js date and time formatting helpers for Jinja2 templates.

Flask-Paginate

Pagination support.

Flask-Reactize

Hides the Node.js development backend for React behind a Flask application.

Flask-Shell2HTTP

RESTful/HTTP wrapper for Python's subprocess API, so you can convert any command-line tool into a RESTful API service.

Flask-Sitemap

Sitemap generation.

Flask-SocketIO

Socket.IO integration.

Flask-SSE

Streaming with flask.

Resources

Official Resources

Project Website

Official Flask website.

Documentation

Comprehensive documentation for all Flask versions.

Flaskr Tutorial

Build a basic blog application called Flaskr.

Source Code

Hosted on GitHub.

External Resources

Full Stack Python's Flask Page

Explanation of Flask philosophy and links to other resources and tutorials.

Miguel Grinberg's Blog

Multiple Flask-specific tutorials.

Nick Janetakis's Blog

Flask Tips, Tricks and Tutorials.

Patrick Kennedy's Blog

Numerous tutorials on learning Python web application development with Flask.

RealPython

Many high-quality tutorials on Flask.

TestDriven.io

Up-to-date tutorials on Flask.

Community

Discord

Pallets Projects community on Discord (use the `#get-help` channel for Flask support).

Reddit

Flask subreddit.

Stack Overflow

Questions tagged `flask`.

Twitter

For official announcements on updates, security fixes, etc.

  • IRC Channel - Chat with other Flask users on IRC channel #pocoo on FreeNode.

Conferences

FlaskCon

Community driven Flask event intended for speakers and attendees all over the world to participate in technical and evangelical sessions related to Flask.

PyConWeb

Covers Django, Tornado, Flask, API frameworks. AsyncIO, networking, Frontend, JavaScript, and web security.

Flask Conf Brazil

Conference for the developers and users of Flask.

PyCon US

The largest annual gathering for the community using and developing the open-source Python programming language.

PyCon Australia

National conference organized for the Python Programming Community.

Euro Python

The largest Python conference in Europe.

PyCon

Complete listing of all PyCons globally.

Meetups

Flask

40+ groups in 20 countries.

Python Web Development

600+ groups in 81 countries.

Python

2,400+ groups in 100 countries.

Podcasts

TalkPython

The leading Python podcast with several episodes on Flask.

Podcast Init

A popular Python podcast that features Flask guests on occasion.

Python Bytes

Another Python podcast that discusses Flask from time to time.

Full Stack Python's Best Python Podcasts Page

A list of active Python-specific podcasts.

Tutorials

Flask Mega-Tutorial

Overarching tutorial for Python beginner and intermediate developers that teaches web development with the Flask framework.

Flaskr TDD

Intro to Flask, Test-Driven Development (TDD), and JavaScript.

Make a Web App Using Python & Flask!

Creating a Python Website from the Bottom Up.

Courses

Developing Web Applications with Python and Flask

This course focuses on teaching the fundamentals of Flask by building and testing a web application using Test-Driven Development (TDD).

Test-Driven Development with Python, Flask, and Docker

Learn how to build, test, and deploy a production-grade microservice powered by Python, Flask, and Docker.

Authentication with Flask, React, and Docker

Learn how to add authentication to a Flask and React microservice!.

Deploying a Flask and React Microservice to AWS ECS

Learn how to deploy microservices to Amazon ECS powered by Flask, React, and Docker.

Build a SAAS App with Flask

Learn to build web applications with Flask and Docker.

Full Stack Foundations

Build a data-driven web app with Python.

Designing RESTful APIs

Build and Secure a backend API server.

Books

Flask Web Development

Learn the framework from the ground up by developing, step-by-step, a real-world project.

Real Python

Learn Python programming, by example.

Explore Flask

Best practices and patterns for developing web applications with Flask.

Videos

PyVideo
Practical Flask Web Development Tutorials
Python Flask Tutorial: Full-Featured Web App
Discover Flask - Full Stack Web Development with Flask

Hosting

PaaS

Heroku
PythonAnywhere
AWS Elastic Beanstalk
Google App Engine
Microsoft Azure App Service
Divio
Render

(Platforms-as-a-Service)

IaaS

AWS EC2
Google Compute Engine
Digital Ocean
Linode

(Infrastructure-as-a-Service)

Serverless

Zappa
Chalice
AWS Lambda
Google Cloud Functions
Azure Functions

Frameworks:

Compute:

Projects

Boilerplates

cookiecutter-flask

With Bootstrap 4, asset bundling annd minification with webpack, starter templates, and registration/authentication.

Cookiecutter Flask Skeleton

Flask starter project for [Cookiecutter](https://github.com/cookiecutter/cookiecutter).

Flask-AppBuilder

Simple and rapid application development framework that includes detailed security, auto CRUD generation for your models, Google charts, and much more.

flask-base

Includes SQLAlchemy, Redis, User Authentication, and more.

Flask-Bootstrap

Integrated SQLAlchemy, authentication, and Bootstrap frontend.

flask-htmx-boilerplate

Boilerplate template for a Python Flask application with HTMX and Tailwind CSS.

uwsgi-nginx-flask-docker

Docker image with uWSGI and Nginx for Flask applications in Python running in a single container.

React-Redux-Flask

Boilerplate application for a Flask JWT Backend and a React/Redux Front-End with Material UI.

Open Source Projects

ActorCloud

Open-source IoT Platform.

BOFS

Create online surveys and behavioral experiments based on declarative configuration files; extend functionality via Flask as-needed.

Busy Beaver

Chicago Python's Community Engagement Slack bot.

FlaskBB

Classic forum software.

Indico

Feature-rich event management system, made at [CERN](https://home.cern/).

Quokka CMS

The happiest CMS in the world.

PythonBuddy

Online Python Editor with live syntax checking and execution.

Redash

Designed to enable anyone, regardless of the level of technical sophistication, to harness the power of data big and small.

SkyLines

Live tracking, flight database, and competition framework.

Security Monkey

Monitors AWS, GCP, OpenStack, and GitHub orgs for assets and their changes over time.

SecureDrop

Open-source whistleblower submission system that media organizations can use to securely accept documents from, and communicate with anonymous sources.

SimpleLogin

Protect your online identity with email alias.

sr.ht

Git hosting service (check out [Why I chose Flask to build sr.ht's mini-services](https://drewdevault.com/2019/01/30/Why-I-built-sr.ht-with-Flask.html) as well).

Timesketch

Collaborative forensic timeline analysis.


NOTE: This project is powered by TestDriven.io. Please support this open source project by purchasing one of our Flask courses. Learn how to build, test, and deploy microservices powered by Docker, Flask, and React!