This is the code for the instructable.
The repository has two branches, master
contains the code for the Arduino / ESP and gh-pages
contains the code for the webpage.
Each commit in these branches matches a step from the instructable.
Feel free to create a pull request if you think something needs improving. But be aware, I'll probably rebase to keep the history simple.