A few years ago I had a colleague who was really into IndieWeb. Very unfairly, every time he started talking about webmentions or POSSE or some other acronym we’d start humming the theme to Indiana Jones. I still think it’s a weird thing to be excited about. But here we are, I’m taking my first steps into the ‘verse. Dum-der-dum-dum…

I’ve been blogging more. This, I think, is good. Weeknotes are dropping, I’m talking more about the side projects that bubble along on weekends and evenings. I even added an uncomfortable few paragraphs all about me. Being open after a few years living under a rock is good for me.

I’ve also been working on the blog itself. What started as an off-the-shelf WordPress monstrosity has now become a sleek static site - a bunch of Markdown and JSON data files, assembled by GitHub Actions and deployed to GitHub Pages. I’m using Hugo but slowly chipping away at it until I hope I won’t need it any more. I write the posts in Google Docs and then I point Claude at them and let it turn it into a Markdown file in the project, fixing double-spacing, adding links and metadata. This works well for me.

I want to keep my site static. I want to write, not sysadmin a live service. But I also want it to feel a bit more alive. With comments and likes and what us old folks used to call ping-backs.

Here’s what I initially settled on as a solution. I toot - I can’t say that with a straight face - I toot every post to Mastodon. So one obvious improvement was to collect the comments and likes from there on each post. And that’s what I did at first with a chunk of JavaScript and a prompt on each post to comment on Mastodon. It was a spark for further work, but it felt wrong. Too much magic happening in places I couldn’t control.

So, step 2 was to get the comments from Mastodon periodically and put them into a data file in the repository and rebuild the site. GitHub Actions to the rescue. My posts tend to have a half-life so I poll more frequently when a post is fresh and when comments are flooding - well, trickling - in. But still I wanted more…

Webmentions are a protocol whereby a website that links to yours can notify you it’s done so on a URL that you specify in your site’s metadata. I use webmention.io to collect my webmentions and I can treat them like the Mastodon posts. A GitHub Action to collect them daily and republish the site if any new ones are made.

This seems to be working well so far, but wheels-within-wheels, I found something yesterday that turns my Mastodon posts and likes into webmentions - brid.gy. So now Mastodon is just another source of webmentions, everything flows through the same place, and that first chunk of JavaScript is gone. Simpler.

Am I doing this right? I’ve no idea. As Indy said “I don’t know. I’m making this up as I go.” But you can of course let me know on Mastodon or webmention me somewhere.