TBone is a framework for building full-duplex, RESTful APIs on top of a Python asynchronous web-server using asyncio.
TBone is web-server agnostic, provided that the web-server is built on asyncio.
It works out-of-the-box with Sanic or Aiohttp and can be extended for other asyncio-based web-servers as well.
TBone was designed to be nonblocking and every component is implemented such that it works with the asyncio
event loop
TBone is comprised of 4 major modules:
- Data Structure - an ODM modeling mechanism for schema definition, data validation and serialization.
- Data Persistency - Persistency mixin classes for document stores with a full implementation for MongoDB.
- Resources - Mechanism for creating full-duplex RESTful APIs.
- Dispatch - Classes for managing internal and external events.