This is documentation about this site.

Blog engine

Academic theme for Hugo.

Content authoring

Content is edited in Markdown. I do all my editing in Vim and Tmux. The whole site, including theme files and content, are checked in Git for version control.

Hosting platform

Hosted in my house.

I have a FreeNAS box and I use FreeBSD jails to isolate and put up web hosting environments.

My script basically builds the site with hugo and syncs the public/ directory to the jail over SSH with rsync.

Large static files are hosted on a separate static HTTP server. It's just another FreeBSD jail with apache24 serving a filesystem directory. This is to avoid commiting large binary files to Git, like videos or large archives I host for sharing.

I commit blog post images optimized for web in my site's repository, because they're optimized and I can take advantage of Hugo Page Bundles.

I use the HAProxy and ACME packages on my pfSense router for reverse proxying and SSL offloading.

My website is hosted on and static files are served at


I use DigitalOcean for the domain.

In pfSense, I configured the Dynamic DNS client with a DigitalOcean API key to update my DNS A record with my residential DHCP IP address.