This code has moved to https://code.mfashby.net/code/var/fossil/unicornpaint
A painting webapp, controlling a 16x16 LED matrix. It allows multiple people to paint at once & updates in real time.
This project includes the following components:
- A Go library for controlling the physical device
- A Go web server utilising websocket communication
- A React JS client application
- Distribution & deployment with Docker
Live example hosted at: https://unicorn.mfashby.net
Ensure SPI is enabled on your raspberry pi:
sudo raspi-config nonint do_spi 0
sudo reboot
Run with docker:
docker pull mfashby/unicornpaint
docker run --device /dev/spidev0.0:/dev/spidev0.0 --publish 3001:3001 mfashby/unicornpaint
Or download the docker-compose file and run with
docker-compose up -d
Or install Go, clone the repository & run directly with
go get github.com/ecc1/spi github.com/gorilla/websocket github.com/MFAshby/unicornpaint/unicorn
go run Server.go