À propos du projet

Uvicorn est une implémentation de serveur web ASGI pour Python, permettant des applications web asynchrones via la spécification ASGI. Il prend en charge HTTP/1.1 et WebSockets, ce qui le rend adapté aux frameworks async modernes nécessitant des connexions de longue durée ou des tâches en arrière-plan. L'installation se fait simplement via pip, avec des options pour installer des versions minimales ou standard incluant des composants basés sur Cython améliorant les performances tels que uvloop et httptools. Uvicorn peut exécuter toute application conforme à ASGI, y compris celles construites avec FastAPI, Starlette ou Django Channels. Il intègre également des fonctionnalités de développement comme le rechargement automatique et le support des fichiers d'environnement. Le projet est sous licence BSD et activement maintenu. Les alternatives incluent Daphne, Hypercorn, Mangum (pour AWS Lambda) et Granian (basé sur Rust). La documentation et le code source sont disponibles publiquement.