Welcome to wsrpc-aiohttp’s documentation!

Coveralls Travis CI Latest Version https://img.shields.io/pypi/wheel/wsrpc-aiohttp.svg https://img.shields.io/pypi/pyversions/wsrpc-aiohttp.svg https://img.shields.io/pypi/l/wsrpc-aiohttp.svg

wsrpc-aiohttp it’s library for writing live web applications with websockets.

Features

  • Two-way RPC
    • Initiating call client function from server side.
    • Calling the server method from the client.
    • Asynchronous connection protocol. Server or client can calls multiple methods with unpredictable ordering of answers.
  • Transparent transferring any exceptions from a client side to the server side and vise versa.
  • The JS frontend-library are well done for usage without any modification.
  • Multiple executors:
    • Fully asynchronous server-side functions.
    • Thread-based websocket handler for writing synchronous code (for synchronous database drivers etc.)
  • Protected server-side methods (starts with underline never will be call from clients-side directly)
  • If ujson is installed messages will be serialize/deserialize with it.

Installation

Installation with pip:

pip install wsrpc-aiohttp

Installation from git:

# via pip
pip install https://github.com/wsrpc/wsrpc-aiohttp/archive/master.zip

# manually
git clone https://github.com/wsrpc/wsrpc-aiohttp.git
cd wsrpc-aiohttp
python setup.py install

Development

Clone the project:

git clone https://github.com/wsrpc/wsrpc-aiohttp.git
cd wsrpc-aiohttp

Create a new virtualenv for wsrpc-aiohttp:

virtualenv -p python3.5 env

Install all requirements for wsrpc-aiohttp:

env/bin/pip install -e '.[develop]'

Thanks for contributing