aiohttp-wsgi
WSGI adapter for aiohttp.
What it is and what it does
aiohttp-wsgi is a bridge that lets you run traditional WSGI applications (Django, Flask, etc.) inside an aiohttp async web server. Instead of running your WSGI app in a separate process or thread pool, it adapts the WSGI interface to work with aiohttp's async event loop, allowing you to handle many concurrent connections more efficiently and add websocket endpoints to an otherwise synchronous web framework.
The package is small and stable, designed to be a thin adapter layer rather than a full rewrite. It depends only on aiohttp and works across Python 3.6–3.10. However, it has been abandoned since February 2022 with no updates since then, so compatibility with newer Python versions or recent aiohttp releases is not guaranteed.
Use it for:
- Migrate a Django or Flask app to async without rewriting it, running it on aiohttp's event loop
- Add websocket endpoints to an existing WSGI application using aiohttp's websocket support
- Handle many concurrent client connections by leveraging asyncio instead of threading
- Gradually transition a synchronous web framework toward async by running it under aiohttp
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Runs WSGI applications like Django and Flask on aiohttp, enabling async handling of client connections and adding websocket support to existing Python web apps.
Yes-with-conditions. The package is permissive-licensed, has low install friction, and solves a real problem for teams wanting to run WSGI apps on aiohttp. However, it is abandoned (last release 2022-02-20) and untested against newer Python versions or recent aiohttp releases. Install only if you are confident the current version works with your target environment, or if you are willing to fork and maintain it yourself.
Install
aiohttp-wsgi on PyPI
pip
pip install aiohttp-wsgiuv
uv add aiohttp-wsgipoetry
poetry add aiohttp-wsgiInstalling aiohttp-wsgi
Before you install
Low install friction with a single runtime dependency (aiohttp). However, the package is abandoned—last release was 2022-02-20, over 1636 days ago. While marked stable and actively used in production when maintained, no updates have been made to address potential compatibility issues with newer Python or aiohttp versions.
License in practice
BSD license is permissive, allowing commercial and private use with minimal restrictions. No licensing barrier to adoption.
Quickstart
pip install aiohttp-wsgi
from aiohttp_wsgi import setup
from aiohttp import web
app = web.Application()
setup(app, your_wsgi_application)
web.run_app(app)
Requires aiohttp as a runtime dependency; no other known blockers, though compatibility with Python versions beyond 3.10 is unverified given the package's abandoned status.
Verify before relying
- Whether the package remains compatible with current aiohttp releases and Python versions beyond 3.10
- Whether websocket functionality works as documented with modern aiohttp versions
- Current production usage patterns and whether critical bugs have been reported since 2022
Package facts
| License | BSD (permissive) |
| Python support | not specified |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 1 — aiohttp |
| Maintenance | abandoned — 1,636 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 79,271/month — #14,369 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: aiohttp_wsgi-0.10.0-py3-none-any.whl
Tags
More Dynamic Content packages
MarkupSafe provides a text object that escapes…
permissive · top 100 on PyPI
Jinja2Jinja2 is a templating engine that renders…
permissive · top 100 on PyPI
soupsieveSoupsieve is a CSS selector library designed to…
permissive · top 100 on PyPI
WerkzeugWerkzeug is a WSGI utility library providing…
permissive · top 1,000 on PyPI
FlaskFlask is a lightweight WSGI web application…
permissive · top 1,000 on PyPI
MakoMako compiles Python-embedded templates into…
permissive · top 1,000 on PyPI
aiohttpaiohttp is an async HTTP client and server…
permissive · top 100 on PyPI
asyncore-wsgiA single-threaded asynchronous WSGI server with…
permissive · top 15,000 on PyPI
aiodockerProvides async/await bindings for the Docker…
permissive · top 5,000 on PyPI
aiohttp-middlewaresProvides a collection of ready-to-use…
permissive · top 15,000 on PyPI
molotovMolotov is a load testing tool that uses…
permissive · top 15,000 on PyPI
awsgi2Bridges WSGI-compatible web frameworks to AWS…
permissive · top 15,000 on PyPI
aiohttp-jinja2Integrates Jinja2 template rendering into…
permissive · top 5,000 on PyPI
uvicornUvicorn is an ASGI web server that runs async…
permissive · top 100 on PyPI
aioazuredevopsFetch data from Azure DevOps API endpoints…
permissive · top 15,000 on PyPI
serverless-wsgiBridges Python WSGI applications (Flask,…
permissive · top 15,000 on PyPI