Project home: http://github.com/...
This projects facilitates the integration of real-time features into a Django project.
Django is not prepeared for handling real time web features. There are a lot of technologies like asynchronous servers, message queues, advanced key-value stores that are not trivial to integrate with Django. Telegraphy currently abstract messages as classes. In order to send some event to the browser, you must define an event class.
You can easily extend you models to generate server-side, asynchronous, events that can be received (and handled) in your frontend templates, in real time.
Includes the following features:
- Simple management management command to run an asynchronous-events server.
- Generic model signal based create, update, delete events.
- Custom events definitions.
- Template tags and a JavaScript API for easy events management on the frontend.
Provides an asynchronous-events management server, or Gateway with the following features:
- Real Time Events
Authentication
- Subscription handling
- Public vs Authnticated Events
- Subscription management (client or event based)
Persistant Subscriptions
- Event management
Class based event definition
- Event query language
- Performance
- Simplified client side subscription handling
- Easy channel emulation
Just get it:
pip install telegraphy
You will need to have pip installed on your system. On linux install the python-pip package, on windows follow this. Also, if you are on linux and not working with a virtualenv, remember to use sudo for both commands (sudo pip install telegraphy).
The django_telegraphy app allows you to easily extend your models so that they generate events on creation, update or delete. Those events will reach your front end in real time.
Simply install the django_telegraphy app in your Django project. Then run the following command in parallel to your web-server:
python manage.py run_telegraph
Extend your models so that they automatically generate events: create an events.py file next to your models.py
from apps.telegraphy.events import DjangoEvent
from apps.myapp.models import MyModel
class MyModelEvents(DjangoEvent):
class Meta:
model = MyModel
And that’s it! Now
You can find more examples in the documentation
You can read the docs online here. Or for offline access, you can clone the project code repository and read them from the docs folder.
Join us at the telegraphy google group.
Machinalis also works on some other very interesting projects, like SimpleAI, Quepy and more.