Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

awesome-asyncio

A curated list of awesome Python asyncio frameworks, libraries, software and resources
https://github.com/timofurrer/awesome-asyncio

Last synced: 6 days ago
JSON representation

  • Web Frameworks

    • Django - An established, high-level Python web framework with a huge community and ecosystem.
    • sanic - Python 3.5+ web server that's written to go fast.
    • websockets - A library for building WebSocket servers and clients in Python with a focus on correctness and simplicity.
    • Tornado - Performant web framework and asynchronous networking library.
    • aiohttp - Http client/server for asyncio (PEP-3156).
    • sanic - Python 3.5+ web server that's written to go fast.
    • websockets - A library for building WebSocket servers and clients in Python with a focus on correctness and simplicity.
    • Tornado - Performant web framework and asynchronous networking library.
    • Starlette - A lightweight ASGI framework/toolkit for building high performance services.
    • aiohttp - Http client/server for asyncio (PEP-3156).
    • sanic - Python 3.5+ web server that's written to go fast.
    • Quart - An asyncio web microframework with the same API as Flask.
    • autobahn - WebSocket and WAMP supporting asyncio and Twisted, for clients and servers.
    • websockets - A library for building WebSocket servers and clients in Python with a focus on correctness and simplicity.
    • uvicorn - The lightning-fast ASGI server.
  • Database Drivers

    • Beanie - An async MongoDB ODM built on [motor](https://github.com/mongodb/motor) and [Pydantic](https://pydantic-docs.helpmanual.io).
    • aioinflux - InfluxDB client built on top of aiohttp.
    • aioes - Asyncio compatible driver for elasticsearch.
    • GINO - is a lightweight asynchronous Python ORM based on [SQLAlchemy](https://www.sqlalchemy.org/) core, with [asyncpg](https://github.com/MagicStack/asyncpg) dialect.
    • Beanie - An async MongoDB ODM built on [motor](https://github.com/mongodb/motor) and [Pydantic](https://pydantic-docs.helpmanual.io).
    • asyncpg - Fast PostgreSQL Database Client Library for Python/asyncio.
    • asyncpgsa - Asyncpg with sqlalchemy core support.
    • aiopg - Library for accessing a PostgreSQL database.
    • aiomysql - Library for accessing a MySQL database
    • aioodbc - Library for accessing a ODBC databases.
    • motor - The async Python driver for MongoDB.
    • redis-py - Redis Python Client (which includes [aioreadis](https://github.com/aio-libs/aioredis) now).
    • aiocouchdb - CouchDB client built on top of aiohttp (asyncio).
    • aioinflux - InfluxDB client built on top of aiohttp.
    • peewee-async - ORM implementation based on [peewee](https://github.com/coleifer/peewee) and aiopg.
    • GINO - is a lightweight asynchronous Python ORM based on [SQLAlchemy](https://www.sqlalchemy.org/) core, with [asyncpg](https://github.com/MagicStack/asyncpg) dialect.
    • Tortoise ORM - native multi-backend ORM with Django-like API and easy relations management.
    • Databases - Async database access for SQLAlchemy core, with support for PostgreSQL, MySQL, and SQLite.
    • Prisma Client Python - An auto-generated, fully type safe ORM powered by Pydantic and tailored specifically for your schema - supports SQLite, PostgreSQL, MySQL, MongoDB, MariaDB and more.
    • Piccolo - An ORM / query builder which can work in async and sync modes, with a nice admin GUI, and ASGI middleware.
  • GraphQL

    • Ariadne - Schema-first Python library for implementing GraphQL servers.
    • Tartiflette - Schema-first Python 3.6+ GraphQL engine built on top of `libgraphqlparser`.
    • Strawberry - Code-first Python 3 GraphQL server with Django, Flask and FastAPI/Starlette support.
    • Ariadne - Schema-first Python library for implementing GraphQL servers.
    • Strawberry - Code-first Python 3 GraphQL server with Django, Flask and FastAPI/Starlette support.
  • Misc

    • taskiq - Asynchronous distributed task manager (like celery, but async).
    • aiocache - Cache manager for different backends.
    • aioserial - A drop-in replacement of [pySerial](https://github.com/pyserial/pyserial).
    • aiochan - CSP-style concurrency with channels, select and multiprocessing on top of asyncio.
    • aiocache - Cache manager for different backends.
    • aiofiles - File support for asyncio.
    • aiopath - Asynchronous `pathlib` for asyncio.
    • aiodebug - A tiny library for monitoring and testing asyncio programs.
    • aiorun - A `run()` function that handles all the usual boilerplate for startup and graceful shutdown.
    • aiosc - Lightweight Open Sound Control implementation.
    • aioserial - A drop-in replacement of [pySerial](https://github.com/pyserial/pyserial).
    • aiozipkin - Distributed tracing instrumentation for asyncio with zipkin
    • asgiref - Backend utils for ASGI to WSGI integration, includes sync_to_async and async_to_sync function wrappers.
    • async_property - Python decorator for async properties.
    • ruia - An async web scraping micro-framework based on asyncio.
    • kubernetes_asyncio - Asynchronous client library for Kubernetes.
    • aiomisc - Miscellaneous utils for `asyncio`.
  • Writings

  • Talks

  • Alternatives to asyncio

  • Message Queues

    • asyncio-nats - Client for the NATS messaging system.
    • aioamqp - AMQP implementation using asyncio.
    • pyzmq - Python bindings for ZeroMQ.
    • aiozmq - Alternative Asyncio integration with ZeroMQ.
    • crossbar - Crossbar.io is a networking platform for distributed and microservice applications.
    • asyncio-nats - Client for the NATS messaging system.
    • aiokafka - Client for Apache Kafka.
  • Testing

    • aresponses - Asyncio http mocking. Similar to the [responses](https://github.com/getsentry/responses) library used for [requests](https://github.com/requests/requests).
    • asynctest - Enhance the standard unittest package with features for testing. asyncio libraries
    • pytest-asyncio - Pytest support for asyncio.
    • aresponses - Asyncio http mocking. Similar to the [responses](https://github.com/getsentry/responses) library used for [requests](https://github.com/requests/requests).
    • aioresponses - Helper for mock/fake web requests in Python aiohttp package.
  • Networking

    • AsyncSSH - Provides an asynchronous client and server implementation of the SSHv2 protocol.
    • aioping - Fast asyncio implementation of ICMP (ping) protocol.
    • httpx - asynchronous HTTP client for Python 3 with [requests](https://github.com/psf/requests) compatible API.
  • Alternative Loops

    • uvloop - Ultra fast implementation of asyncio event loop on top of libuv.