### What is django-socketio-events?
Simply adds socket.io functionality to Django applications by proxying Django behind a Nodejs/SocketIO server.
Any callback function defined in an `app_folder` is exposed to Socket.IO as the target `my_app.callback_fn`. See examples below.
### Usage
```
python manage.py runserverjs <hostname> <public port> <proxy port> <socket port>
```
In any Django template that you want a Socket IO connection, add this templatetag to your HEAD:
```
{% load nodjango %}
<!doctype html>
<html>
<head>
<script type="text/javascript" src="//code.jquery.com/jquery-2.1.1.min.js"></script>
{% socketio_head_scripts %}
</head>
<body>
<button>Click Me</button>
<script type="text/javascript">
socket.on('my_callback', function(data){
console.log(JSON.stringify(data));
});
$('button').on('click', function(){
socket.emit('django', {
'event': 'my_app.change_color',
'callback': 'my_callback',
'color': 'red'
});
});
</script>
</body>
</html>
```
```
# my_app/socketio.py
def change_color(color):
# change color
# ...
# profit
return {'result': 42}
```
### Installation
```
pip install django-socketio-events
```
And then add `nodjango` to your `INSTALLED_APPS`.
### Under the hood
* [virtual-node](https://github.com/elbaschid/virtual-node) for installing [node.js](http://nodejs.org/) in a Python virtualenv.
* [Django](https://www.djangoproject.com/) web framework
Simply adds socket.io functionality to Django applications by proxying Django behind a Nodejs/SocketIO server.
Any callback function defined in an `app_folder` is exposed to Socket.IO as the target `my_app.callback_fn`. See examples below.
### Usage
```
python manage.py runserverjs <hostname> <public port> <proxy port> <socket port>
```
In any Django template that you want a Socket IO connection, add this templatetag to your HEAD:
```
{% load nodjango %}
<!doctype html>
<html>
<head>
<script type="text/javascript" src="//code.jquery.com/jquery-2.1.1.min.js"></script>
{% socketio_head_scripts %}
</head>
<body>
<button>Click Me</button>
<script type="text/javascript">
socket.on('my_callback', function(data){
console.log(JSON.stringify(data));
});
$('button').on('click', function(){
socket.emit('django', {
'event': 'my_app.change_color',
'callback': 'my_callback',
'color': 'red'
});
});
</script>
</body>
</html>
```
```
# my_app/socketio.py
def change_color(color):
# change color
# ...
# profit
return {'result': 42}
```
### Installation
```
pip install django-socketio-events
```
And then add `nodjango` to your `INSTALLED_APPS`.
### Under the hood
* [virtual-node](https://github.com/elbaschid/virtual-node) for installing [node.js](http://nodejs.org/) in a Python virtualenv.
* [Django](https://www.djangoproject.com/) web framework
Release files for django-socketio-events 0.1.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| django-socketio-events-0.1.2.tar.gz | 30.4 MB | Details |
Release files / django-socketio-events-0.1.2.tar.gz
| Download URL | django-socketio-events-0.1.2.tar.gz |
|---|---|
| Size | 30.4 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
788a33b8e8e319f79f00d1bd06d5ca864c8c51393fcb4dcbad43fb460a48f3a5
|
|
BLAKE2b-256 checksum How to use checksums |
08e9add0b37aaf3910d22ff799db0131238f8a2f1140a2f2194117ad2a79e5cc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |