Skip to content

abourget/gevent-socketio

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Presentation

https://secure.travis-ci.org/abourget/gevent-socketio.png?branch=master

gevent-socketio is a Python implementation of the Socket.IO protocol, developed originally for Node.js by LearnBoost and then ported to other languages. Socket.IO enables real-time web communications between a browser and a server, using a WebSocket-like API. One aim of this project is to provide a single gevent-based API that works across the different WSGI-based web frameworks out there (Pyramid, Pylons, Flask, web2py, Django, etc...). Only ~3 lines of code are required to tie-in gevent-socketio in your framework. Note: you need to use the gevent python WSGI server to use gevent-socketio.

Community, rise up!

ANNOUNCEMENT: This project is in need of a solid maintainer to navigate through the 27+ open Pull Requests, merge what needs to be merged, and continue on with newer developments. @abourget is not putting as much time as he'd like on this project these days. This project has nearly 1000 GitHub Stars.. it's used by major corporations. It's a great project for you to lead. Contact me on Twitter @bourgetalexndre to take more leadership.

Technical overview

Most of the gevent-socketio implementation is pure Python. There is an obvious dependency on gevent, and another on gevent-websocket. There are integration examples for Pyramid, Flask, Django and BYOF (bring your own framework!).

Documentation and References

You can read the renderered Sphinx docs at:

Discussion and questions happen on the mailing list:

or in the Github issue tracking:

You can also contact the maintainer:

Installation

You can install with standard Python methods:

pip install gevent-socketio

or from source:

git clone git://github.com/abourget/gevent-socketio.git
cd gevent-socketio
python setup.py install

For development, run instead of install:

python setup.py develop

If you want to do all of that in a virtualenv, run:

virtualenv env
. env/bin/activate
python setup.py develop   # or install

To execute all tests, run:

tox

To execute all tests for a specific Python version, run something like:

tox -e py27

To execute a specific test for a specific Python version, run something like:

tox -e py27 -- test_packet.py::TestEncodeMessage::test_encode_event