Skip to main content
Join the official 2020 Python Developers SurveyStart the survey!

No project description provided

Project description


bluemax is a python rpc server using websockets.

The concept is that you can write python functions and expose them in the __all__ property of the module.

The complexity comes when you want to do more than this. And that is what I am working on. The most important pattern to me is being able to insert, update and delete in the database and be able to broadcast the changes to all users after the actor gets their response. I call it broadcast_on_success.

    actor   crud    broadcast
      |       |         |
      |------>|         |
      |       |         |
      |<------|         |
      |       |-------->|
      |       |         |
      |       |         |

The errors from crud are local to the actor. The actor will receive identity on success and then like every other user hear about crud via broadcast.

Using annotations allows clients to infer function. See the sample.add function.

For deployment of multiple servers see:

To use:

pip install bluemax

To install:

python3.7 -m venv venv
. venv/bin/activate
pip install -e git+

To run you can choose either with workers using redis or standalone.

To run standalone:

bluemax run.server -m

To run with redis:

pip install bluemax[redis]
docker run -p 6379:6379 -d redis:2.8

Then create a conf.yml file containing:

REDIS_URL: redis://localhost

Then run a worker in one terminal and a server in the another.

bluemax run.worker -c conf.yml


bluemax -c conf.yml


bluemax run.server -c conf.yml

Now go to http://localhost:8080 and add some numbers.

To build your own project try:

bluemax sidney olive

You can use any name for your module. It will create extension points for logs, settings, urls and a base procedures modules. bluemax will look for your procedures.all in the module you pass in.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for bluemax, version 0.2.6
Filename, size File type Python version Upload date Hashes
Filename, size bluemax-0.2.6-py3-none-any.whl (51.3 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size bluemax-0.2.6.tar.gz (33.1 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page