Awesome Flask
A curated list of awesome Flask resources and plugins
Framework
- Connexion - Swagger/OpenAPI First framework for Python on top of Flask with automatic endpoint validation and OAuth2 support
- Flask-MongoRest - Restful API framework wrapped around MongoEngine
- Eve - REST API framework powered by Flask, MongoDB and good intentions
- Flask-Restless - A Flask extension for creating simple ReSTful APIs from SQLAlchemy models
- Flask-RESTful - Simple framework for creating REST APIs
- Flask-RestPlus - syntaxic sugar, helpers and automatically generated Swagger documentation.
- Flask-Potion - RESTful API framework for Flask and SQLAlchemy
- Zappa - Build and deploy server-less Flask applications on AWS Lambda and API Gateway
Admin interface
- Flask-Admin - Simple and extensible administrative interface framework for Flask
Authentication
- Flask-Security - Quick and simple security for Flask applications
- Flask-Login - Flask user session management
- Flask-User - Customizable user account management for Flask
- Flask-HTTPAuth - Simple extension that provides Basic and Digest HTTP authentication for Flask routes
Authorization
- Authlib - Authlib is an ambitious authentication library for OAuth 1, OAuth 2, OpenID clients, servers and more.
- Authomatic - Authomatic provides out of the box support for a number of providers using OAuth 1.0a (Twitter, Tumblr and more) and OAuth 2.0 (Facebook, Foursquare, GitHub, Google, LinkedIn, PayPal and more)
- Flask-Pundit - Extension based on Rails' Pundit gem that provides easy way to organize access control for your models
Database
- Flask-MongoEngine - MongoEngine flask extension with WTF model forms support
- Flask-SQLAlchemy - Adds SQLAlchemy support to Flask
Database Migrations
- Flask-Migrate - SQLAlchemy database migrations for Flask applications using Alembic
Session
- Flask-Session - Server side session extension for Flask
Cache
- Flask-Caching - Adds easy cache support to Flask
- flask-heroku-cacheify - Automatic Flask cache configuration on Heroku
Data Validation
- Flask-WTF - Simple integration of Flask and WTForms, including CSRF, file upload and Recaptcha integration.
- Flask-Mail - Flask-Mail adds SMTP mail sending to your Flask applications
i18n
- flask-babel - i18n and l10n support for Flask based on Babel and pytz
Full-text searching
- SQLAlchemy-Searchable - Full-text searching for Flask-SQLAlchemy (Postgres only)
- flask_msearch - Full text search for flask with whoosh
Rate Limiting
- Flask-Limiter - Flask-Limiter provides rate limiting features to flask routes
Task Queue
- dramatiq - A fast and reliable distributed task processing library for Python 3
- huey - a little task queue for python
- Flask-RQ - RQ (Redis Queue) integration for Flask applications
- celery - Distributed Task Queue
Exception tracking
- Raven - Raven is a Python client for Sentry.
- airbrake-python - Python client for Airbrake
Tracing
- flask-zipkin - Distributed tracing with Zipkin.
- Flask-OpenTracing - Distributed tracing with OpenTracing.
APM
- elastic-apm - Elastic APM agent for Python
Other SDK
- Flask-GoogleMaps - Build and embed google maps in our Flask templates
- Flask-Gravatar - Small and simple gravatar usage in Flask
- Flask-Pusher - Pusher integration for Flask
- Flask-Azure-Storage - Flask extension that provides integration with Azure Storage
Frontend
- Flask-CORS - A Flask extension for handling Cross Origin Resource Sharing (CORS), making cross-origin AJAX possible
- flask-assets - Flask webassets integration
- flask-s3 - Seamlessly serve your static assets of your Flask app from Amazon S3
- Flask-SSLify - Force SSL on your Flask app
- Flask-HTMLmin - Flask html minifier
Development (Debugging/Testing/Documentation)
- Flasgger - Create API documentation for Flask views using Swagger 2.0 specs
- flask-apispec - simple self-documenting APIs with flask
- flask2postman - Generate a Postman collection from your Flask application
- flask_profiler - endpoint analyzer/profiler for Flask
- Flask-DebugToolbar - A port of the django debug toolbar to flask
- flask-debug-toolbar-mongo - MongoDB panel for the Flask Debug Toolbar
- Flask-Testing - Unittest extensions for Flask
- pytest-flask - A set of pytest fixtures to test Flask applications
- Flask-MonitoringDashboard - Automatically monitor the evolving performance of Flask/Python web services.
Utils
- flask-marshmallow Flask + marshmallow for beautiful APIs
- flask-jsonrpc - A basic JSON-RPC implementation for your Flask-powered sites
- Flask-Bcrypt - Flask-Bcrypt is a Flask extension that provides bcrypt hashing utilities for your application
- Mixer - Mixer is application to generate instances of Django or SQLAlchemy models
- Flask-FeatureFlags - A Flask extension that enables or disables features based on configuration
- Flask-Reggie - Regex Converter for Flask URL Routes
- Flask-SocketIO - Socket.IO integration for Flask applications
- Flask-Moment - Formatting of dates and times in Flask templates using moment.js
- Flask-Paginate - Pagination support for Flask
Resources
Tutorials
- How to build a news app that never goes down and costs you practically nothing (by NPR)
- Building websites in Python with Flask
- The Flask Mega-Tutorial
- Implementing a RESTful Web API with Python & Flask
- Discover Flask - Full Stack Web Development with Flask
- Flaskr - Intro to Flask, Test Driven Development, and jQuery
Courses
Books
- Explore Flask
- Flask Web Development
- Real Python
- Learning Flask Framework
- Flask Blueprints
- Flask Framework Cookbook
- Mastering Flask
- Building Web Applications with Flask
Slides
- Creating beautiful REST APIs with Flask
- Advanced Flask Patterns
- Flasky Goodness
- Domain Driven Design (... with Flask)
- In Flask we Trust
Videos
Built with Flask
- zmusic-ng - ZX2C4 Music provides a web interface for playing and downloading music files using metadata.
- GuitarFan - guitar tab
- June -
python-china.org - Zerqu - ZERQU is a content-focused API-based platform. eg: Python-China
- motiky
- missing - a list service called missing
- thenewsmeme.com
- overholt - Example Flask application illustrating common practices
- pypress - flask team blog
- thepast.me
- redispapa - another redis monitor by using flask, angular, socket.io
- flaskblog - a simple blog system based on flask
- cleanblog - a clean blog system based on flask and mongoengine
- Quokka CMS - CMS made with Flask and MongoDB
- chat - a live chat built with python (flask + gevent + apscheduler) + redis
- chatapp - Flask and Angular.js Chat Application using Socket.io
- Frozen-Flask - Freezes a Flask application into a set of static files
- mcflyin - A small timeseries transformation API built on Flask and Pandas
- Skylines - Live tracking, flight database and competition framework
- airflow - Airflow is a system to programmatically author, schedule and monitor data pipelines.
- timesketch - Collaborative forensics timeline analysis
- changes - A dashboard for your code. A build system.
- security_monkey - monitors policy changes and alerts on insecure configurations in an AWS account.
- securedrop- an open-source whistleblower submission system that media organizations can use to securely accept documents from and communicate with anonymous sources.
- sync_engine - IMAP/SMTP sync system with modern APIs
- cleansweep - Volunteer & Campaign Management System
- indico - a general-purpose event management web-based solution. It includes a full-blown conference organization workflow as well as tools for meeting management and room booking. It provides as well integration with video-conferencing solutions.
- flaskbb - A classic Forum Software in Python using Flask.
Boilerplate
- fbone
- cookiecutter-flask
- Flask-Foundation
- flask-rest-template
- gae-init - Flask boilerplate running on Google App Engine
- Flask-AppBuilder - Simple and rapid application builder framework, built on top of Flask. includes detailed security, auto form generation, google charts and much more