Unicorn Paint

All Top-level Files

Files in the top-level directory in any check-in

Unicorn Paint

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