awesome-python-web-frameworks
A curated list of awesome Python Web Frameworks (micro, full-stack, REST, etc.)
https://github.com/sfermigier/awesome-python-web-frameworks
Last synced: 8 days ago
JSON representation
-
Additional resources
-
Historical
- Web Frameworks - python#restful-api) but it's not very thorough.
-
-
Comparisons
-
Historical
- Hello to the World in 8 Web Frameworks (Micro, Batteries Included & Async) - presentation by Aaron Bassett at PyCon AU (2018)
-
-
Frameworks for Micropython
-
More
- microdot - The impossibly small web framework for Python and MicroPython.
- MicroWebSrv - A micro HTTP web server that supports WebSockets, HTML/Python language templating and routing handlers, for MicroPython (used on Pycom modules & ESP32).
- MicroWebSrv2 - The last micro web server for IoTs (MicroPython) or large servers (CPython), that supports WebSocket, routes, template engine and with really optimized architecture (mem allocations, async I/Os).
- tinyweb - Simple and lightweight HTTP async server for MicroPython.
- micropython-nanoweb - Full async MicroPython web server with small memory footprint.
- micropyserver - MicroPyServer is a simple HTTP server for MicroPython projects.
- micropython-urouter - A lightweight HTTP request routing processing support library based on MicroPython. The previous name was micro-route.
-
-
Front-end frameworks
-
More
- Flet - Flet enables developers to easily build realtime web, mobile and desktop apps in Python. No frontend experience required.
- ReactPy - User interfaces in Python without Javascript
- Flexx - Write desktop and web apps in pure Python
- Reactor - Phoenix LiveView but for Django
- Django-Suckpuppet - Build reactive applications with the django tooling you already know and love.
- Flask-Meld - a library to provide server rendered templates over websockets for Flask applications to build reactive components without Javascript.
- Reacton - A pure Python port of React for ipywidgets.
- enaml-web - Build interactive websites with [enaml](https://github.com/nucleic/enaml)
- Nicegui - Create web-based user interfaces with Python. The nice way.
- Panel - The Powerful Data Exploration & Web App Framework for Python.
- Awesome Panel
- Django-Unicorn
- Tetra - a full stack component framework for Django using Alpine.js
- Reflex - Reflex is a library to build full-stack web apps in pure Python.
- Mesop - a Python-based UI framework that allows you to rapidly build web apps like demos and internal apps.
- Starfyre - A Python Framework for writing Reactive Front-End Applications.
-
-
Full-stack frameworks, but data-layer agnostic
- Awesome Flask
- Awesome Pyramid
- Flask - a lightweight WSGI web application framework. It is designed to make getting started quick and easy, with the ability to scale up to complex applications.
- Pyramid - a small, fast, down-to-earth, open source Python web framework. It makes real-world web application development and deployment more fun, more predictable, and more productive.
- Quart - Quart is an asyncio reimplementation of the popular Flask microframework API. This means that if you understand Flask you understand Quart.
-
Full-stack frameworks, including data layer (ORM)
- Django - a high-level Python Web framework that encourages rapid development and clean, pragmatic design. Includes ORM, templatting engine, etc.
- Awesome Django
- Emmett - a full-stack Python web framework designed with simplicity in mind.
-
Http servers
-
More
- gunicorn - 'Green Unicorn' is a WSGI HTTP Server for UNIX, fast clients and sleepy applications.
- uvicorn - Uvicorn is an ASGI web server implementation for Python.
- bjoern - A screamingly fast Python 2/3 WSGI server written in C.
- Granian - A Rust HTTP server for Python applications.
- daphne - A HTTP, HTTP2 and WebSocket protocol server for ASGI and ASGI-HTTP, developed to power Django Channels.
- Waitress - A pure-Python WSGI server, it's simple, lightweight, and production-ready. It's often used with Pyramid and other WSGI applications.
- hypercorn - ASGI server based on the sans-io hyper, h11, h2, and wsproto libraries.
- uwsgi - application server container, implement application server interfaces for various languages and platforms: WSGI, PSGI, Rack, Lua WSAPI, CGI, PHP, Go.
- Pounce - a free-threading-native ASGI server for Python 3.14t with HTTP/1.1, HTTP/2, HTTP/3, WebSocket, and streaming support.
-
-
Micro-frameworks
-
Async
- Awesome FastAPI
- Sanic - a Python 3.7+ web server and web framework that's written to go fast. It allows the usage of the async/await syntax added in Python 3.5, which makes your code non-blocking and speedy.
- Awesome Sanic
- Aiohttp - Asynchronous HTTP client/server framework for asyncio and Python.
- Starlette - a lightweight ASGI framework/toolkit, which is ideal for building high performance asyncio services.
- Litestar - Production-ready, Light, Flexible and Extensible ASGI API framework | Effortlessly Build Performant APIs.
- BlackSheep - BlackSheep is an asynchronous web framework to build event based web applications with Python.
- Fasthtml - "The fastest way to create an HTML app". (Based on Starlette).
- Esmerald - Highly scalable, performant, easy to learn, easy to code and for every sizeable and complex application.
- Awesome Litestar
- nanoasgi - A toy ASGI web framework (170 lines) (Dead, but useful for educational puposes.)
- MicroPie - MicroPie is an ultra-micro ASGI Python web framework that gets out of your way.
- Awesome Starlette
- FastAPI - a modern, fast (high-performance), web framework for building APIs with Python 3.6+ based on standard Python type hints. Based on Starlette (see below).
- Awesome Starlette
- Chirp - a Python ASGI web framework for HTML over the wire, streaming responses, and Server-Sent Events.
-
Dead Frameworks (kept for reference)
- Hug - aims to make developing Python driven APIs as simple as possible, but no simpler. As a result, it drastically simplifies Python API development.
- Morepath - "web microframework with super powers". An application consists of models. Each type of model is published on a URL path. Content is exposed to the web using views.
-
More
- uapi - a high-level, extremely fast Python microframework for writing HTTP APIs, either synchronously or asynchronously. Uses a lower-level HTTP framework to run. Currently supported frameworks are aiohttp, Flask, Quart, and Starlette.
-
Sync
- Falcon - a reliable, high-performance Python web framework for building large-scale app backends and microservices. It encourages the REST architectural style, and tries to do as little as possible while remaining highly effective. Also async.
- Bottle - a fast, simple and lightweight WSGI micro web-framework for Python. It is distributed as a single file module and has no dependencies other than the Python Standard Library.
- Molten - A minimal, extensible, fast and productive framework for building HTTP APIs with Python 3.6 and later.
-
-
REST frameworks
-
Dead REST frameworks
- Flask-Restful - Simple framework for creating REST APIs.
- API star - a framework-agnostic toolkit for working with OpenAPI or Swagger schemas.
- Ripozo - A tool for quickly creating REST/HATEOAS/Hypermedia APIs in python. [Dead]
-
More
- Django Rest Framework - a powerful and flexible toolkit for building Web APIs.
- Eve - an open source Python REST API framework based on Flask. It allows to effortlessly build and deploy highly customizable, fully featured RESTful Web Services. Eve offers native support for MongoDB, and SQL backends via community extensions.
- Flask-Restx - Fully featured framework for fast, easy and documented API development with Flask.
- Flask Smorest - a REST API framework built upon Flask and marshmallow.
- Djapy - Django coupled with Pydantic, RestAPI framework
-
-
Usage stats
Programming Languages
Categories
Sub Categories
Keywords
python
44
http
13
asgi
13
asyncio
12
web
11
http-server
10
api
9
rest
9
django
8
framework
7
wsgi
7
web-framework
6
flask
6
async
5
micropython
5
websockets
5
esp32
5
awesome
5
webserver
4
awesome-list
4
websocket
3
esp8266
3
web-server
3
swagger
3
webapp
3
gui
3
json
3
openapi
3
python3
3
iot
3
fullstack
2
hc2
2
microwebsrv
2
pyboard
2
django-channels
2
javascript
2
pycom
2
liveview
2
rest-api
2
redoc
2
jupyter
2
restful
2
pydantic
2
server
2
litestar-framework
2
react
2
litestar
2
litestar-api
2
uvicorn
2
template-engine
2