Python Frameworks

Build your projects by harnessing the power of Python, capitalizing its extensive array of frameworks, libraries and resources.

Python thrives on the strength of its vibrant community and extensive ecosystem. With a wealth of frameworks, libraries, and resources at your disposal, you can tap into a vast reservoir of tools and solutions to build exceptional software. Whether you're developing and launching web applications, data pipelines, machine learning models, geospatial processings, automated tasks, or anything in between. This versatile language offers a rich selection of options that empower you to create outstanding solutions and deliver excellence to change the world right way.


Apps

Python stands out in web application development thanks to its simplicity, extensive community support, and wide range of frameworks. The rich ecosystem provides efficient solutions for web development tasks, allowing for rapid prototyping and development. With Python, developers can focus on building features and functionality, leveraging existing tools and resources to streamline the development process.

Django

Django is a high-level Python web framework that encourages rapid development and clean, pragmatic design.

Flask

Flask is a lightweight WSGI web application framework.

FastAPI
FastAPI

FastAPI is a modern, fast (high-performance), web framework for building APIs with Python 3.8+ based on standard Python type hints.

Pyramid Pyramid

Projects with ambition start small but finish big and must stay finished.

Bottle

Bottle is a fast, simple and lightweight WSGI micro web-framework.

It is distributed as a single file module and has no dependencies other than the Python Standard Library.

WEB2PY

Free open source full-stack framework for rapid development of fast, scalable, secure and portable database-driven web-based applications.

CherryPy is a pythonic, object-oriented web framework.

TurboGears

The Web Framework that scales with you.

TurboGears 2 is built on top of the experience of several next generation web frameworks including TurboGears 1, Django, and Rails.

Sanic

The lightning-fast asynchronous Python web framework

A Python 3.8+ web server and web framework that’s written to go fast!

Build fast. Run fast.
Quart

Quart is an asyncio reimplementation of the popular Flask microframework API.

BlackSheep
BlackSheep

BlackSheep is an asynchronous web framework to build event based web applications with Python.

Masonite
Masonite

Masonite is the developer focused dev tool with all the features you need for the rapid development you deserve.

litestar

Litestar is a powerful, flexible, highly performant, and opinionated ASGI framework.



Tornado is a scalable, non-blocking web server and asynchronous web application framework in Python.

CubicWeb

CubicWeb is a semantic web application framework.

Empowering developers to efficiently build web applications by reusing components (called cubes) and following the well known object-oriented design principles.

Dash

Dash

Dash is the most downloaded, trusted Python framework for building ML & data science web apps.

- Built on top of Plotly.js, React, and Flask.
Streamlit

Streamlit

Streamlit makes it easy to create and share beautiful, custom web apps for machine learning and data science.

No front‑end experience required.

Reflex is an open-source, full-stack Python framework that makes it easy to build and deploy web apps in minutes.


Use Python for everything.
Robyn
Robyn

A Fast, Innovator Friendly, and Community Driven Python Web Framework

Robyn merges Python's async capabilities with a Rust runtime for reliable, scalable web solutions.

Starlette

Starlette is a lightweight ASGI framework/toolkit, which is ideal for building async web services in Python.

AIOHTTP

Asynchronous HTTP Client/Server for asyncio and Python.

Esmerald

Esmerald is a modern, powerful, flexible, high performant, web framework designed to build not only APIs but also full scalable applications from the smallest to enterprise level.


Highly scalable, performant, easy to learn, easy to code and for every application.

Python3.8+, Starlette, Pydantic

Klein is a micro-framework for developing production-ready web services with Python.

werkzeug + twisted.web
frappe-framework
Frappe Framework

Low code web framework for real world applications, in Python and Javascript.

A web framework with "batteries included"

webpy
WebPy

web.py is a web framework for python that is as simple as it is powerful.

web.py is in the public domain, you can use it for whatever purpose with absolutely no restrictions.

panel

The powerful data exploration & web app framework for Python

Easily build powerful tools, dashboards and complex applications entirely in Python.

Dara

Dara

Dara is a dynamic application framework designed for creating interactive web apps with ease, all in pure Python.

- Build decision apps in Python

JustPy


An object oriented high-level Python Web Framework that requires no frontend programming

Muffin

Muffin -- is a fast, lightweight and asyncronous ASGI web-framework for Python 3.

Solara

A pure Python, React-style web framework

Solara helps you build powerful & scalable Jupyter and web apps faster and easier.

shiny-for-python

Build interactive web applications easily with the power of Python’s data and scientific stack.

Flet

Flet


Flet enables developers to easily build realtime web, mobile and desktop apps in Python. No frontend experience required.

Microdot


The impossibly small web framework for Python and MicroPython

Taipy

Taipy

Turns Data and AI algorithms into production-ready web applications in no time.

- Build Python data & AI web applications. Beyond existing libraries.
Gradio

Build and share delightful machine learning web apps, all in Python.

Emmett

The web framework for inventors

Emmett is a full-stack Python web framework designed with simplicity in mind.


APIs

Python owns extensive ecosystems for building REST and GraphQL APIs in simplicity and reliability. These frameowrks enable rapid development, and people could get benefits from a vibrant developer community, and provides cross-platform compatibility. Python frameworks offer security features, scalability through asynchronous frameworks, and seamless integration with other technologies. Python's well-documented libraries and support for microservices make it an ideal choice for building versatile and efficient REST and GraphQL APIs.

FastAPI
FastAPI

FastAPI is a modern, fast (high-performance), web framework for building APIs with Python 3.8+ based on standard Python type hints.


Pydantic. OpenAPI. Swagger UI.

Falcon Falcon

Falcon is a minimalist ASGI/WSGI framework for building mission-critical REST APIs and microservices, with a focus on reliability, correctness, and performance at scale.


Falcon is rock solid and it’s fast.
Hug

Obvious. Clean. Radically simple.

Hug aims to make developing Python driven APIs as simple as possible, but no simpler.

Eve

Eve: The Simple Way to REST.

Eve is an open source Python REST API framework designed for human beings.

Powered by Flask and Cerberus

DjangoRestFramework

Django REST framework is a powerful and flexible toolkit for building Web APIs.

Flask-RESTful

Flask-RESTful is an extension for Flask that adds support for quickly building REST APIs.

Flask-RESTX

Fork of Flask-RESTPlus: Fully featured framework for fast, easy and documented API development with Flask.

Cornice

A REST framework for Pyramid


Cornice provides helpers to build & document REST-ish Web Services with Pyramid.

A webservice API framework for Django

Tastypie provides a convenient, yet powerful and highly customizable abstraction for creating REST-style interfaces.


Flask API is a drop-in replacement for Flask that provides an implementation of browsable APIs similar to what Django REST framework provides.


Browsable web APIs for Flask.
Sanic

The lightning-fast asynchronous Python web framework

A Python 3.8+ web server and web framework that’s written to go fast!

Build fast. Run fast.
Fast to learn, fast to code, fast to run

Django Ninja is a web framework for building APIs with Django and Python 3.6+ type hints.


litestar

Effortlessly build performant APIs with Litestar


Flama

Productionalise your machine learning models seamlessly

Flama is a data-science oriented framework to rapidly build modern and robust machine learning APIs.

Fire up your models with the flame

Esmerald

Highly scalable, performant, easy to learn, easy to code and for every application.

Esmerald is a modern, powerful, flexible, high performant, web framework designed to build not only APIs but also full scalable applications from the smallest to enterprise level.

connexion

Connexion is a modern Python web framework that makes spec-first and api-first development easy.


It works either standalone, or in combination with any ASGI or WSGI-compatible framework!

APIFlask

100% compatible with the Flask ecosystem.

APIFlask is a lightweight Python web API framework based on Flask and marshmallow-code projects.

GraphQL in Python Made Easy

Integrations with Django, Flask, FastAPI, SQLAlchemy, Startlette, and more


Graphene is a library that provides tools to implement a GraphQL API in Python using a code-first approach.

graphene Graphene-Django

Build powerful, efficient, and flexible GraphQL APIs with seamless Django integration.

strawberry-graphql
Strawberry

Strawberry is built on top of Python’s dataclasses and type hints functionality.

Integrations with Django, FastAPI, Flask, Quart, Sanic, Chalice, Starlette, AIOHTTP, and more

Ariadne

Python library for implementing GraphQL servers using schema-first approach.


Ariadne integrates with Django, FastAPI, Flask, Starlette, and others.

tartiflette

by Dailymotion

Effortlessly build performant APIs with trafilatura


CMS

Content Management Systems (CMS) frameworks in Python are software platforms designed to facilitate the creation, management, and publication of digital content, making it easier for users to build and maintain websites and web applications without extensive coding knowledge. Python offers several CMS frameworks that cater to various use cases and requirements.

wagtail

The leading open-source Python CMS


Wagtail is an open source content management system built on Django, with a strong community and commercial support.

Open source enterprise content management system backed by the non-profit django CMS Association.


Indico

A feature-rich event management system, made @ CERN, the place where the Web was born.


The effortless open-source tool for event organisation, archival and collaboration
Plone

A CMS built on top of the open source application server Zope.

FeinCMS

An extensible Django-based CMS

FeinCMS is an extremely stupid content management system. It knows nothing about content -- just enough to create an admin interface for your own page content types.

Kotti CMS


Kotti is a high-level, Pythonic web application framework based on Pyramid and SQLAlchemy.

It includes an extensible Content Management System called the Kotti CMS.

Kotti User Manual

Mezzanine

Mezzanine is a powerful, consistent, and flexible content management platform.


Built using the Django framework, Mezzanine provides a simple yet highly extensible architecture that encourages diving in and hacking on the code.

Lektor

The lektor static file content management system

A flexible and powerful static content management system for building complex and beautiful websites out of flat files


ML, DL & AI

Python frameworks are exceptionally well-suited for machine learning (ML), deep learning (DL), and artificial intelligence (AI) applications. Python's popularity in this domain is driven by its rich ecosystem of specialized libraries and frameworks that simplify the development and deployment of ML, DL, and AI models.

Pytorch

PyTorch is an optimized tensor library for deep learning using GPUs and CPUs.

Tensorflow

The most popular Deep Learning framework created by Google.


Keras

Deep Learning for humans


Keras 3 is a new multi-backend implementation of the Keras API, with support for TensorFlow, JAX, and PyTorch.

The most popular Python library for Machine Learning.


scikit-learn: machine learning in Python
H2O

Open Source, Distributed, Fast & Scalable Machine Learning Platform

H2O is an in-memory platform for distributed, scalable machine learning.

gymnasium

An API standard for reinforcement learning with a diverse collection of reference environments.

Spark ML

PySpark: The Python API for Apache Spark.


MLlib is Spark’s machine learning (ML) library. Its goal is to make practical machine learning scalable and easy.

XGBoost is an optimized distributed gradient boosting library designed to be highly efficient, flexible and portable.


mindsdb

Build AI applications fast

MindsDB's AI Virtual Database empowers developers to connect any AI/ML model to any datasource.

OpenAI

The official Python library for the OpenAI API.


The OpenAI API can be applied to virtually any task that requires understanding or generating natural language and code.

LangChain

LangChain is a framework for developing applications powered by language models.

- Building applications with LLMs through composability
SuperAGI

Open-source framework to build, manage and run useful Autonomous AI Agents

chatdev

ChatDev
Communicative Agents for Software Development

colossalai

Colossal-AI: Making large AI models cheaper, faster, and more accessible

mindsdb

LightLLM is a Python-based LLM (Large Language Model) inference and serving framework, notable for its lightweight design, easy scalability, and high-speed performance.

haystack

LLM orchestration framework to build customizable, production-ready LLM applications.

Modular Python framework for AI agents and workflows with chain-of-thought reasoning, tools, and memory.


Maintain control and flexibility at every step

Task Queues & Messaging

Python offers robust frameworks for task queues and messaging systems, facilitating the creation of scalable, asynchronous, and event-driven applications. Python's extensive libraries for message handling and serialization, along with its readability and simplicity, make it a preferred language for designing systems that rely on messaging and task queues, particularly in scenarios where background processing and real-time event handling are critical.

Celery
Celery

Distributed Task Queue


Celery is a task queue with focus on real-time processing, while also supporting task scheduling.

dramatiq

A fast and reliable distributed task processing library for Python 3.

huey

Huey 2 is a lightweight task queue for python

Propan

Just another HTTP a declarative Python Messaging framework.


A powerful and easy-to-use Python framework for building event-driven applications that interact with any MQ Broker.

RQ (Redis Queue) is a simple Python library for queueing jobs and processing them in the background with workers.


Simple job queues for Python
apprise

Apprise - Push Notifications that work with just about every platform!

arq

Fast job queuing and RPC in python with asyncio and redis.


arq was conceived as a simple, modern and performant successor to rq.


Parallel & Distributed Computing

Python frameworks (including bindings) are often used to create applications that distribute workloads across multiple nodes or machines, enabling parallel processing, task scheduling, and distributed data processing. This approach enhances performance, scalability, and fault tolerance, making it suitable for applications involving big data processing, real-time analytics, and other computationally intensive tasks.

Ray

Ray is a unified framework for scaling AI and Python applications.


Ray consists of a core distributed runtime and a set of AI Libraries for accelerating ML workloads.

Dask

Parallel computing with task scheduling

Dask is a flexible parallel computing library for analytics.

PySpark

The Python API for Apache Spark.


PySpark enables you to perform real-time, large-scale data processing in a distributed environment using Python.

Python Stream Processing

Faust is a stream processing library, porting the ideas from Kafka Streams to Python.

Streamparse lets you run Python code against real-time streams of data via Apache Storm.


Workflow & Pipelines

Python provides abroad of frameworks and packages for workflow management, data pipelines, and job scheduling, making it a strong choice for data engineering and job automation. Python's flexibility, rich ecosystem, and ease of use make it well-suited for developing and maintaining data pipelines and workflow automation systems.

Airflow

Apache Airflow™ is an open-source platform for developing, scheduling, and monitoring batch-oriented workflows.

Prefect
Prefect

Running Python functions as pipeline jobs


Prefect is a workflow orchestration tool empowering developers to build, observe, and react to data pipelines

Airbyte

Data integration platform for ELT pipelines from APIs, databases & files to databases, warehouses & lakes


Luigi

Luigi


Luigi is a Python package that helps you build complex pipelines of batch jobs.

dbt

A transformation workflow that helps you get more work done while producing higher quality results.

dbt enables data analysts and engineers to transform their data using the same practices that software engineers use to build applications.

Mage Mage

Mage is an open-source, hybrid framework for transforming and integrating data.


The modern replacement for Airflow. Build, run, and manage data pipelines for integrating and transforming data.

joblib

Running Python functions as pipeline jobs


Joblib is a set of tools to provide lightweight pipelining in Python.

Run Python functions (or any other callable) periodically using a friendly syntax.

Python job scheduling for humans.
MLflow

An open source platform for the machine learning lifecycle.

MLflow is a platform to streamline machine learning development, including tracking experiments, packaging code into reproducible runs, and sharing and deploying models.

SpiffWorkflow

A powerful workflow engine implemented in pure Python.

SpiffWorkflow is a framework that provides a flexible workflow execution environment.

Metaflow

A framework for building and managing real-life data science and ML projects with ease!

Python Fast Dataflow programming framework for Data pipeline work.

Concept of the Botflow is very simple.
Kedro

Kedro is a toolbox for production-ready data science.

Kedro uses software engineering best practices to help you create data engineering and data science pipelines that are reproducible, maintainable, and modular.

APScheduler is a Python library that lets you schedule your Python code to be executed later, either just once or periodically.

Advanced Python Scheduler
Dagster

Dagster is designed for developing and maintaining data assets, such as tables, data sets, machine learning models, and reports.

Doit

doit comes from the idea of bringing the power of build-tools to execute any kind of task.


Serverless

Serverless offers benefits like automatic scaling, reduced operational overhead, and cost-efficiency, as you only pay for actual usage. Python frameworks are exceptionally compatible with serverless architecture, as they provide rapid development capabilities and seamless deployment to serverless platforms, aligning with the agility and scalability demands of modern cloud-based architectures.

Zappa

Zappa makes it super easy to build and deploy server-less, event-driven Python applications.

Serverless Python
localstack

LocalStack is a cloud service emulator that runs in a single container on your laptop or in your CI environment.


A fully functional local AWS cloud stack. Develop and test your cloud & Serverless apps offline.

Chalice
Chalice

Python Serverless Microframework for AWS.

Chalice is a framework for writing serverless apps in python. It allows you to quickly create and deploy applications that use AWS Lambda.

Mangum is an adapter for running ASGI applications in AWS Lambda to handle Function URL, API Gateway, ALB, and Lambda

AWS Lambda support for ASGI applications.
Python Lambda

Python-lambda is a toolset for developing and deploying serverless Python code in AWS Lambda.

lambdarest
Lambdarest

Python routing mini-framework for AWS Lambda with optional JSON-schema validation.


Microservices

Microservices architecture is a compelling approach to designing and deploying software systems, and Python is increasingly recognized as a strong choice for implementing microservices. Popular frameworks such as Falcon, Flask, FastAPI, and Nameko offer lightweight and scalable solutions for building microservices in Python, providing tools for handling HTTP requests, managing data, and orchestrating microservices interactions. Python proves to be a robust and pragmatic choice for microservices development.

Nameko

A microservices framework that lets service developers concentrate on application logic and encourages testability.

A microservice framework for Python.

Falcon Falcon

The no-magic web data plane API and microservices framework for Python developers, with a focus on reliability, correctness, and performance at scale.


Falcon is rock solid and it’s fast.
minos

MinOS

A framework which helps you create reactive microservices in Python.

grpc

A high performance, open source universal RPC framework


It's framework built in Go by Google, and prvides grpcio and grpcio-tools supporting Python.


DevOps

Python frameworks are well-suited for modern DevOps practices due to their versatility, extensive library support, and ease of use. Python's simplicity makes it a preferred language for writing automation scripts, while the frameworks leverage Python to streamline configuration management, orchestration, and infrastructure as code.

Fabric

Fabric

A simple, Pythonic tool for remote execution and deployment.


Built on top of Invoke (subprocess command execution and command-line features) and Paramiko (SSH protocol implementation).

Pyinfra

pyinfra automates infrastructure using Python.

It’s fast and scales from one server to thousands. Great for ad-hoc command execution, service deployment, configuration management and more.

Salt

Salt is the world's fastest, most intelligent and scalable automation engine.


Built on Python, Salt is an event-driven automation tool and framework to deploy, configure, and manage complex IT systems.

Supervisor is a client/server system that allows its users to control a number of processes on UNIX-like operating systems.

A Process Control System
Psutil


A cross-platform library for retrieving information on running processes and system utilization (CPU, memory, disks, network, sensors) in Python.

BuildBot

The Continuous Integration Framework

Buildbot can automate all aspects of the software development cycle


Web Crawling / Scraping

Web crawling/scraping using Python frameworks is a highly effective approach for extracting data from websites and web-based sources. Python offers powerful frameworks that streamline the web crawling/scraping and data acquisition process. With Python's readability, extensive support for parsing HTML and handling data, and the ability to integrate with databases, web crawling/scraping becomes an ideal solution for tasks such as data mining, content aggregation, and competitive analysis.

Scrapy

A fast high-level web crawling & scraping framework


Scrapy is an open source and collaborative framework for extracting the data you need from websites. In a fast, simple, yet extensible way.

Parse Atom and RSS feeds in Python.

Universal feed parser.
selenium
Selenium

A browser automation framework and ecosystem.

Selenium is an umbrella project for a range of tools and libraries that enable and support the automation of web browsers.

Ruia
Ruia

Async Python 3.6+ web scraping micro-framework based on asyncio.


Ruia is an async web scraping micro-framework, written with asyncio and aiohttp, aims to make crawling url as convenient as possible.

Dude


dude uncomplicated data extraction: A simple framework for writing web scrapers using Python decorators

trafilatura

Python & command-line tool to gather text on the Web: web crawling/scraping, extraction of text, metadata, comments

dirsearch

dirsearch - Web path discovery

Gerapy


Distributed Crawler Management Framework Based on Scrapy, Scrapyd, Scrapyd-Client, Scrapyd-API, Django and Vue.js.


GUI & TUI

Python frameworks are an excellent choice for graphical user interface (GUI) and text-based user interface (TUI) development, as they provide developers with versatile tools for creating cross-platform desktop applications. Popular GUI frameworks like Tkinter, PyQT, and Kivy offer user-friendly interfaces, extensive widget libraries, and responsive design capabilities. Python's readability and ecosystem streamline development for various purposes, ensuring a broad user reach.

Flet

Flet


Flet enables developers to easily build realtime web, mobile and desktop apps in Python. No frontend experience required.

Eel is a little Python library for making simple Electron-like offline HTML/JS GUI apps, with full access to Python capabilities and libraries.

Eel hosts a local webserver...
DearPyGUI

A modern, fast and powerful GUI framework for Python


A fast and powerful Graphical User Interface Toolkit for Python with minimal dependencies.

Enaml is a programming language and framework for creating professional-quality user interfaces with minimal effort.

Declarative User Interfaces for Python

Flexx


Flexx is a pure Python toolkit for creating graphical user interfaces (GUI's), that uses web technology for its rendering.

Gooey

Turn (almost) any Python command line program into a full GUI application with one line.


Gooey converts your Console Applications into end-user-friendly GUI applications.


pyglet is a cross-platform windowing and multimedia library for Python, for developing games and other visually rich applications.

PyGOBjbect

Support Linux, Windows and macOS and works with Python 3.8+ and PyPy3


PyGObject is a Python package which provides bindings for GObject based libraries such as GTK, GStreamer, WebKitGTK, GLib, GIO and many more.

QT

PyQt

PyQt is a set of Python bindings for The Qt Company's Qt application framework and runs on all platforms supported by Qt including Windows, macOS, Linux, iOS and Android.

PySimpleGUI

PySimpleGUI is actively developed & supported.

Transforms the tkinter, Qt, WxPython, and Remi (browser-based) GUI frameworks into a simpler interface.


Build GUI for your Python program with JavaScript, HTML, and CSS

pyTermTk

(python Terminal Toolkit) is a Text-based user interface library (TUI)

Evolved from the discontinued project pyCuT and inspired by a mix of Qt5,GTK, and tkinter api definition with a touch of personal interpretation.

wxPython

wxPython is a cross-platform GUI toolkit for the Python programming language.

Toga is a Python native, OS native, cross platform GUI toolkit.

textual

Textual is a Rapid Application Development framework for Python.

Build sophisticated user interfaces with a simple Python API. Run your apps in the terminal and a web browser!

Urwid

Urwid is a console user interface library for Python on Linux, OSX, Cygwin or other unix-like OS.

nice-gui

Create web-based user interfaces with Python. The nice way.


Interact with Python through buttons, dialogs, 3D scenes, plots and much more.


Games

The Python ecosystem boasts a wide array of exceptional frameworks for game development, making it a versatile and powerful platform for creating interactive and engaging games. Whether you're a beginner or an experienced game developer, Python's frameworks provide the resources needed to bring your gaming ideas to life.

Arcade is an easy-to-learn Python library for creating 2D video games.

Ren'Py is a visual novel engine

Used by thousands of creators from around the world

PySDL2 is a pure Python wrapper around the SDL2, SDL2_mixer, SDL2_image, SDL2_ttf, and SDL2_gfx libraries.


Python ctypes wrapper around SDL2

cocos2d

A framework for building 2D games, demos, and other graphical/interactive applications.


Automated Testing

Automated testing serves as a systematic approach to validating software functionality, improving code quality, and identifying defects early in the development process. Within the Python ecosystem, testing frameworks streamline the process of writing and executing automated tests, empowering developers to construct dependable, high-quality software with assurance and reliability.

Originally inspired by JUnit and has a similar flavor as major unit testing frameworks in other languages.

Behave

behave is behaviour-driven development, Python style.


Behavior-driven development (or BDD) encourages collaboration between developers, QA and non-technical or business participants in a software project.

nose2’s extends unittest to make testing nicer.

The successor to nose

A Python framework that provides a simple and consistent interface for web application automation.

Splinter is used to write web browser automation scripts.
Ward

Ward is a modern test framework for Python with a focus on productivity and readability.


Application Integrations

In the realm of enterprise service bus (ESB) and application integrations, Python serves as a powerful and versatile ally. With a framework like Zato, developers can seamlessly orchestrate the interconnection of disparate systems, enabling efficient communication and collaboration between applications.

Zato

Zato

Open-source Enterprise Service Bus, API, AI and Cloud Integrations in Python.

- Integrate everything. In Python.