This is an example app demonstrating how to use (and deploy) Django Channels. It's a simple real-time chat app — like a very, very light-weight Slack. There are a bunch of rooms, and everyone in the same room can chat, in real-time, with each other (using WebSockets).
For a walkthrough of what's going on here, see my article over on the Heroku blog.
You can visit my deployment of the example online, or deploy your own copy to Heroku with this button (which requires a free Heroku account):
To run this app locally, you'll need Python, Postgres, and Redis. (On my Mac, I installed Postgres.app and Redis from Homebrew (
brew install redis).)
Then, to run:
pip install -r requirements.txt(you almost certainly want to do this in a virtualenv).
DATABASE_URL=postgres:///... python manage.py migrate
REDIS_URL, then start
REDIS_URLin your environ, then run
python manage.py runserver.
runworker) as shown in the
Tomas Tomecek put together a Dockerized version of this app.