Port of https://github.com/mtolly/hackathon to Canvas