About This Site

Other Protocols

See my Small Internet Stack page for information about this and more.


I have an UptimeRobot Status Page.


This is a Jekyll site with a custom theme and layout.

The site should be mobile friendly.

The site does not require JavaScript or Cookies.


I use FontAwesome for the icons on the landing page and a couple of fonts from Google Web Fonts. All assets are hosted locally.

      _ _
    _{ ' }_
   { `.!.` }
     (\|  /)
      \| //
jgs \\ |/  //


The ASCII art is credited with the artists’s “tag” or initials. Most is taken from https://asciiart.website/ and https://ascii.co.uk/art.


I’ve hosted my website(s) all sorts of ways over the years - most commonly on servers at home, sometimes on VPS instances, various static web hosts, and currently on AWS S3 with AWS CloudFront. It’s resonably inexpensive for what I’ve got and keeps it consistent with other projects I have.

Build and Deployment

I maintain the website itself from the joshbeard/joshbeard.me-website repository on GitHub.

I’m using GitHub Actions for building and deploying the website, which consists of:

  • Jekyll build
  • Minify static assets
  • Create artifact
  • Deploy to S3
  • Set cache on objects in S3
  • Invalidate CloudFront distribution cache

To deploy the AWS resources, I use Terraform in the joshbeard/joshbeard.me-tf-aws repository. This uses my common tf-aws-site Terraform module to deploy, which manages a common AWS stack for my static websites.

          &&& &&  & &&
      && &\/&\|& ()|/ @, &&
      &\/(/&/&||/& /_/)_&/_&
   &() &\/&|()|/&\/ '%" & ()
  &_\_&&_\ |& |&&/&__%_/_& &&
&&   && & &| &| /& & % ()& /&&
     &&     \|||
       , -=-~  .-^- _
ejm97         `


I deploy my photos to their own S3 bucket from my workstation instead of storing them all in Git. I use a customized Jekyll plugin to generate the HTML pages for these photo albums. These photos are also mounted and available to my Gopher and Gemini deployments.