Projects
These are some of the side-projects I've worked on recently. You can find a lot more on my GitHub profile.
Splendid
Webapp for playing board games online. Originally written for playing Splendor, but now aiming to support a variety of games.
Puzzad
A web-based, self-paced puzzle hunt. The site is open source: it uses a Go backend and a Svelte frontend. The puzzles are not open source, but there are several 'adventures' available to play for free!
Centauri
A simple reverse proxy written in Go, with support for obtaining certificates from an ACME provider. It can also connect directly to a Tailscale network for exposing internal services nicely.
Dotege
A tool to generate configuration files based on currently running Docker containers. Originally designed to be used for haproxy, I now use it to generate a configuration file for Centauri.
Contempt
Another container templating tool! This one is for generating Dockerfiles (or Containerfiles) that contain up-to-date, pinned dependencies. It can also handle committing those changes to git, and building and pushing the image to a registry.
Goplum
A simple, self-hosted monitoring service. Periodically runs checks and sends notifications when things go wrong.
gitrefs
A small Go library that can be used to list references in a Git repository remotely over HTTP, without the need for a local clone.
envflag
A small Go library that populates flags from environment variables. I use this in most of my Go projects to quickly and easily enable twelve-factor-style configuration.