awesome-asgi
github.com/florimondmanca/awesome-asgi ↗A curated list of awesome ASGI servers, frameworks, apps, libraries, and other resources
Use this list with your AI agent
Add the Context Awesome MCP server to Claude, Cursor, or any MCP client, then ask:
"Show me talks resources from awesome-asgi"
Installation instructions →What's inside
Resources
- An introduction to ASGI, Asynchronous Server Gateway InterfaceTalks
- ASGI 3.0Publications
- asgi-backgroundExperiments and examples
Background tasks for any ASGI framework.
- ASGI DocumentationReference
Documentation site for the ASGI specification.
- asgi-lifespan-middlewareExperiments and examples
ASGI middlewate to support ASGI lifespans using a simple async context manager interface.
- asgirefReference
ASGI reference implementation, including function wrappers, server base classes, type hints, and a WSGI-to-ASGI adapter.
Monitoring
- Apitally
Simple, privacy-focused API monitoring, analytics and request logging for popular ASGI frameworks (including FastAPI, Django, Starlette, Litestar).
- asgi-correlation-id
Request/Correlation ID logging middleware
- New Relic ASGI
New Relic integration for ASGI applications. (Shipped with
- opentelemetry-python
ASGI middleware and helpers for collecting application metrics via the (currently alpha) OpenTelemetry standard. Supports HTTP and WebSocket.
- Scout APM Starlette
Scout APM integration with Starlette and Starlette-based frameworks. (Shipped with
- Sentry ASGI
Sentry integration for ASGI frameworks. (Shipped with
GraphQL
- Ariadne
A schema first Python library for implementing GraphQL servers.
- Strawberry
A code first Python library for implementing GraphQL servers, inspired by dataclasses.
- tartiflette-asgi
ASGI support for the Tartiflette GraphQL engine.
Authentication
- asgi-auth-github
GitHub OAuth authentication for ASGI apps. Supports restricting to specific users or member of specific teams or organizations.
- SessionAuth
Authenticate using sessions and cookies. (Shipped with Piccolo API, and requires Piccolo ORM.)
- TokenAuth
Authenticate using tokens in request headers. (Shipped with Piccolo API, and requires Piccolo ORM.)
Security
- asgi-csrf
ASGI middleware for protecting against CSRF attacks.
- asgi-ratelimit
A customizable rate limiting ASGI middleware, with regex path matching support.
- CORSMiddleware
Allow cross-origin requests from browsers. (Shipped with Starlette.)
- CSPMiddleware
Tell browsers to only run Javascript from the same origin. (Shipped with Piccolo API.)
- CSRFMiddleware
Protect against CSRF attacks when using cookies for authentication. (Shipped with Piccolo API.)
- HTTPSRedirectMiddleware
Redirect HTTP/WS traffic to HTTPS/WSS. (Shipped with Starlette.)
Utilities
- asgi-htmx
HTMX integration for ASGI applications.
Testing
- asgi-lifespan
Programmatic startup/shutdown of ASGI apps. Allows testing an ASGI app without having to spin up a server.
- async-asgi-testclient
A framework-agnostic library for testing ASGI web applications.
- HTTPX
Next generation HTTP client, including async support and ability to call ASGI apps directly.
Application frameworks
- Asgineer
A really thin ASGI web framework, which includes support for long polling, SSE and websockets.
- BlackSheep
BlackSheep is an asynchronous web framework to build event based web applications with Python. It is inspired by Flask, ASP.NET Core, and the work by Yury Selivanov.
- Channels
Asynchronous support for Django, and the original driving force behind the ASGI project. Supports HTTP and WebSockets with Django integration, and any protocol with ASGI-native code.
- Django
The web framework for perfectionists with deadlines. Has native ASGI support since version 3.0.
- Falcon
The minimalist REST and app backend framework for Python, with a focus on reliability, correctness, and performance at scale. Native ASGI support since version 3.0.
- FastAPI
A modern, high-performance web framework for building APIs with Python 3.6+ based on standard Python type hints. Powered by Starlette and Pydantic. Supports HTTP and WebSockets.
Showing a sample of 76 resources. View the full list on GitHub →