Webmentions on a static site with GitHub Actions

Last year, I added webmentions to this blog. To recap, webmentions are a web standard to create a network of comments, likes, and reposts between ordinary sites. I set up a brid.gy account to poll Twitter for webmentions targetting my blog, and I caught them with webmention.io.

Webmentions were fetched with AJAX and rendered at the bottom of each page. There were two things I didn't like about this approach:

  • I'd rather just have them prerendered by Hugo, my static site generator
  • Webmentions are stored on Webmention.io, but I'd rather have ownership over them

After some tinkering, I came up with an alternative: a cron-based GitHub Action that queries webmention.io for new webmentions. The Action then commits them to my site's repository, so I can access the data with my static site generator, Hugo.

Read more

Migrating my site to Hugo

This blog was a custom Laravel application for the past few years. While I was happy with the Laravel solution, I'm slowly trying to move away from maintaining my own servers. I'm also drawn to the simplicity and stability of serving plain html, so I decided to look into static site generators.

I quickly discovered that Hugo was what I was looking for. Hugo is a very fast and very popular static site generator.

Read more