A chatroom with support for real-time collaborative drawing. Think MS Paint meets Google Docs!
- run a single server or as a cluster
- consistent, persistant state
- dynamically add/remove nodes at any time
PaintChat requires a Cassandra server instance to run. Launch a quick instance with Docker using the official Cassandra image:
$ docker run -d -p 9042:9042 cassandra
Export the ip of your cassandra instance to CASSANDRA_IP (PaintChat will use 127.0.0.1:9042 by default if unbound)
$ export CASSANDRA_IP=[your Docker machine's ip]
With Docker:
$ docker run -it --net=host -e CASSANDRA_IP=$CASSANDRA_IP kevinchabreck/paintchat
With SBT:
$ sbt run
Multiple instances of PaintChat can be run in parallel on the same host. They will attempt to bind to port 8080, and retry at monotonically increasing port numbers upon failure. The default number of max retry attempts is 3.
Point your browser to http://DOCKERHOST:8080/ (replace DOCKERHOST with the ip or hostname of your Docker machine)