uvicorn
The lightning-fast ASGI server.
Install
uvicorn on PyPI
pip
pip install uvicornuv
uv add uvicornpoetry
poetry add uvicornPackage facts
| License | BSD-3-Clause (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 3 — click, h11, typing-extensions |
| Maintenance | actively maintained — 0 days since the last release |
| First released | |
| Popularity | one of the 100 most-downloaded packages on PyPI (30-day window, as of 2026-08-13) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-13) |
Evidence: uvicorn-0.52.3-py3-none-any.whl
About uvicorn
from the package's own PyPI description — quoted content, verbatim
<p align="center"> <img width="320" height="320" src="https://raw.githubusercontent.com/tomchristie/uvicorn/main/docs/uvicorn.png" alt='uvicorn'> </p>
<p align="center"> <em>An ASGI web server, for Python.</em> </p>
Build Status (image) Package version (image) Supported Python Version (image) Discord (image)
Documentation: https://uvicorn.dev
Source Code: https://www.github.com/Kludex/uvicorn
Uvicorn is an ASGI web server implementation for Python.
Until recently Python has lacked a minimal low-level server/application interface for async frameworks. The [ASGI specification][asgi] fills this gap, and means we're now able to start building a common set of tooling usable...
Read as markdown · JSON record · Source repository · Homepage
AI interpretation — verify before relying
AI-generated interpretation of the package facts above; every digit, version, license, or vulnerability id it cites is grounded in the facts already shown on this page
Uvicorn is a lightning-fast ASGI web server for Python that runs async web applications with support for HTTP/1.1 and WebSockets.
Low install friction with only three pure-Python runtime dependencies (click, h11, typing-extensions). Actively maintained with a recent release. Optional extras like uvloop and httptools are available for performance tuning.
BSD-3-Clause permissive license allows commercial and private use with minimal restrictions, requiring only license and copyright notice preservation.
Usage
pip install uvicorn
# example.py
async def app(scope, receive, send):
await send({
'type': 'http.response.start',
'status': 200,
'headers': [(b'content-type', b'text/plain')],
})
await send({
'type': 'http.response.body',
'body': b'Hello, world!',
})
# Run: uvicorn example:app
Requires Python 3.10 or later; application must be an ASGI-compliant async callable.
Verdict: Uvicorn is a top-100 PyPI package with active maintenance, permissive licensing, and minimal dependencies. No known vulnerabilities and low install friction make it a reliable choice for running ASGI applications in production or development.
Needs verification
- Whether the repository at github.com/sponsors/encode is the canonical source or if github.com/Kludex/uvicorn is an alternative fork.
- Performance characteristics and real-world throughput compared to alternative ASGI servers mentioned in the documentation.
Similar packages
permissive · top 100 on PyPI
asgirefpermissive · top 1,000 on PyPI
watchfilespermissive · top 1,000 on PyPI
python-multipartpermissive · top 1,000 on PyPI
sse-starlettepermissive · top 1,000 on PyPI
httpxpermissive · top 100 on PyPI
websocket-clientpermissive · top 1,000 on PyPI
trio-websocketpermissive · top 1,000 on PyPI
opentelemetry-util-httppermissive · top 1,000 on PyPI
sniffiopermissive · top 100 on PyPI