/awesome-flask

A curated list of awesome things related to Flask

Creative Commons Zero v1.0 UniversalCC0-1.0

Awesome Flask Awesome

A curated list of awesome things related to Flask.

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

Contents

Third-Party Extensions

Admin

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

APIs

RESTful API Support

RESTful API + Swagger/OpenAPI Documentation Support

Swagger/OpenAPI Documentation Support

Auth

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

  • 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.

Cache

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 support.

Databases

ORMs

ODMs

Migrations

  • Flask-Alembic - Configurable Alembic 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.

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

Other Tools

  • Flask-Excel - Uses pyexcel to read, manipulate, and write data in different Excel formats: csv, ods, xls, xlsx and xlsm.

Developer Tools

Debugging

Fixtures

Logging

  • Rollbar - Flask error logging with Rollbar.

Monitoring

Tracing

Testing

Email

  • Flask-Mail - Provides simple email sending capabilities.

Forms

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

Full-text Search

Security

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 (Redis Queue) integration.
  • Huey - Redis-based task queue that aims to provide a simple, yet flexible framework for executing tasks.

Utils

Resources

Official Resources

External Resources

Community

  • Discord - Pallets Projects community on Discord (use the #get-help channel for Flask support).
  • Flask Jobs - A job board dedicated to Flask.
  • IRC Channel - Chat with other Flask users on IRC channel #pocoo on FreeNode.
  • Mailing List - General discussion of Flask and the Pallets projects (flask@python.org).
  • Reddit - Flask subreddit.
  • Stack Overflow - Questions tagged flask.
  • Twitter - For official announcements on updates, security fixes, etc.

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

Podcasts

Tutorials

Courses

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

Hosting

PaaS

(Platforms-as-a-Service)

IaaS

(Infrastructure-as-a-Service)

Serverless

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.
  • gae-init - For starting new applications on Google App Engine.
  • 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.
  • 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.
  • Flask-Scaffold - Prototype Database driven Web apps in Angular 6, Bootstrap 4 and REST API's with Flask.
  • Flask-VueJS - Connect Flask application with VueJS.

Open Source Projects

  • ActorCloud - Open-source IoT Platform.
  • Airflow
  • Busy Beaver - Chicago Python's Community Engagement Slack bot.
  • FlaskBB - Classic forum software.
  • Indico - Feature-rich event management system, made at 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 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!