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