My personal website
Switch branches/tags
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
yarn.lock Codacy Badge

I have a website because it's an interesting tool... It's become an archive and a fairly complete on-line portfolio, as well as offering an opportunity to write a little.

— John Howe

This is the source code for my personal website, The final HTML & CSS is excluded; the site is statically generated on the fly by Hugo, a static site generator written in Go. See the Development section for details on how to do this.

The site has been online since 2006 and open-sourced since 2013. Since then, it's back end has undergone many revisions; see the for details.


Make is used to aid development and automate all the steps required to build the site. The Makefile understands these commands:

  • make yarn - Uses Yarn to download any site dependances or updates to them, then moves them into the correct folder
  • make build - Runs make yarn and builds the site with Hugo
  • make dev - Watch files for changes and automatically rebuild the site. Also, starts a built-in HTTP server and opens the default browser to see changes.
  • make push - Runs both make yarn and make build, then uploads the site to my webserver


See the humans.txt file, which lists in detail all the third party components this site uses. Alternatively, the site's colophon provides a high-level overview with a description of the server environment.


I would love your feedback! If you found any of these code useful, please drop me an email. For the privacy conscious, feel free to encrypt any messages using my PGP key:

46E6 9F69 90C1 DE8C 9791 88EE 94A4 E2D4 6B32 AA11

To import it into your keyring:

$ curl | gpg --import -

NOTE: SKS Public Key Servers (such as don't support Curve25519 keys yet. In the meantime, consider using; my username is timothykeith.

Bug Reports

Submit bug reports via GitLab's Issue Tracker


Copyright © 2013 – 2018 Timothy Keith, except where otherwise noted.

Licensed under the MIT license.

This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.