Skip to content
Official repository for gevent-socketio
JavaScript Python CSS
Branch: master
Clone or download

Latest commit

Latest commit 1cdb159 Sep 4, 2016

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
debian New upstream release, add missing debian source format file Nov 15, 2012
docs Point to the base directory for the local socketio module. Jan 2, 2014
examples Fixed typo when importing sockets file in views Apr 14, 2013
socketio Add support for Django 1.10 Sep 3, 2016
tests Added tox configuration for running tests across multiple Python Feb 28, 2016
.gitignore Added tox configuration for running tests across multiple Python Feb 28, 2016
.travis.yml
AUTHORS updated the authors file Jul 4, 2012
CHANGELOG Updating CHANGELOG for 0.3.6 release Feb 3, 2014
LICENSE Refactored prototype. Doesn't work like the prototype did :/ Oct 17, 2010
MANIFEST.in Added tox configuration for running tests across multiple Python Feb 28, 2016
README.rst Added tox configuration for running tests across multiple Python Feb 28, 2016
bootstrap.py Fix issue with gevent 1.0 and with ack value with single param Aug 17, 2013
buildout.cfg Fix issue with gevent 1.0 and with ack value with single param Aug 17, 2013
pip-requirements-test.txt Added tox configuration for running tests across multiple Python Feb 28, 2016
pip-requirements.txt Added tox configuration for running tests across multiple Python Feb 28, 2016
setup.py Added tox configuration for running tests across multiple Python Feb 28, 2016
tox.ini Expanded Python test versions. Feb 28, 2016

README.rst

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
You can’t perform that action at this time.