Skip to content

A curated list of awesome Python asyncio frameworks, libraries, software and resources

License

Notifications You must be signed in to change notification settings

yhyu13/awesome-asyncio

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Awesome asyncio Awesome

A carefully curated list of awesome Python asyncio frameworks, libraries, software and resources.

The Python asyncio module introduced to the standard library with Python 3.4 provides infrastructure for writing single-threaded concurrent code using coroutines, multiplexing I/O access over sockets and other resources, running network clients and servers, and other related primitives.

Asyncio is not really a brand-new technology however it appears to be very trending since a few years - especially in the Python community and with the release of Python 3.4 in March 2016. Thus, it's pretty hard to keep yourself up-to-date with the most awesome packages out there. Find some of those awesome packages here and if you are missing one we count on you to create an Issue or a Pull Request with your suggestion.

Contents


Web Frameworks

Libraries to build web applications.

  • aiohttp - Http client/server for asyncio (PEP-3156).
  • sanic - Python 3.5+ web server that's written to go fast.
  • Kyoukai - Fully async web framework for Python3.5+ using asyncio.
  • cirrina - Opinionated asynchronous web framework based on aiohttp.
  • 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.

Message Queues

Libraries to implement applications using message queues.

  • aioamqp - AMQP implementation using asyncio.
  • aiozmq - Asyncio (pep 3156) integration with ZeroMQ.
  • crossbar - Crossbar.io is a networking platform for distributed and microservice applications.

Database Drivers

Libraries to connect to databases.

  • 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.
  • asyncio-redis - Redis client for Python asyncio (PEP 3156).
  • aiocouchdb - CouchDB client built on top of aiohttp (asyncio).
  • aioes - Asyncio compatible driver for elasticsearch.
  • peewee-async - ORM implementation based on peewee and aiopg.

Networking

Libraries to communicate in your network.

  • AsyncSSH - Provides an asynchronous client and server implementation of the SSHv2 protocol.

Testing

Libraries to test asyncio based applications.

  • aiomock - A python mock library that supports async methods.
  • asynctest - Enhance the standard unittest package with features for testing. asyncio libraries
  • pytest-asyncio - Pytest support for asyncio.

Alternative Loops

Alternative asyncio loop implementations.

  • uvloop - Ultra fast implementation of asyncio event loop on top of libuv.
  • curio - The coroutine concurrency library.

Misc

Other awesome asyncio libraries.

  • aiofiles - File support 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.

Writings

Documentation, blog posts, and other awesome writing about asyncio.

Talks

People has given awesome talks about asyncio.

About

A curated list of awesome Python asyncio frameworks, libraries, software and resources

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published