Using Mastodon without Mastodon

2024 note: I never ended up using this (sshing into my site just to interact with people was a bit much) and ended up installing a Pleroma instance instead. Also, the toot I’m replying to in the example is on an instance that no longer exists.

Yesterday I tried doing a thing that I was sure wouldn’t work, but in the end, much to my delight, it did! Tl;dr, I now seem to able to reply/otherwise react to stuff on the fediverse without actually creating an account on any of the instances of Mastodon etc. Honestly, I am amazed that this actually functions as intended.

Part of why I was reluctant to join Mastodon was because I didn’t want to commit to a particular server and give the impression that I was necessarily in complete ideological alignment with that specific server’s moderator(s) – an issue that I’d say is much more acute on decentralised social media. For a while I was, rather outrageously, wondering about starting my own instance for just me and using that. A quick bit of googling put paid to that idea when I discovered that even if I upgraded my NearlyFreeSpeech site to “production” capabilities, which would allow a bit of backend stuff, it still wouldn’t be running the right technologies to make Mastodon work. It looked like the only option was to get a separate VPS, which definitely wouldn’t have been worth the money. (Also … I don’t know any PHP and this would undoubtedly have been a problem.)

Then I remembered the IndieWeb, which I’d casually looked at a few times before, and which allows different sites to communicate with each other by means of webmentions. This is pretty similar to how the fediverse works in that accounts are hosted on different servers and somehow still manage to interact, so it got me wondering whether anyone had devised a way of allowing sites outside the fediverse system to use webmentions to communicate with those within it. And someone had! So I tried it out.

I found a good tutorial for setting up webmentions on static sites, which requires integration with a few third-party services, although all of them seem pretty robust and the only thing I’m sharing is my newly generated GPG public key. Oddly enough, that was the most difficult part of the process for me as a hobbyist with very uneven tech knowledge: I was given an alphanumeric string and told to “sign it” and paste the result back into the text field with no additional instructions. Looking at the GPG manpage, it seemed like gpg –-sign would be a sensible thing to try, and I assumed I needed to write the string to a file and run it on that; that all turned out to be useless because the output was a binary file, which I couldn’t exactly paste back into my browser. After that I worked out (or, more accurately, serendipitously guessed) that the argument I actually needed was --clearsign, and after that we were away.

Webmentions seem to require three principal things: a few links in your site header; specific classes in your HTML; actually sending the webmention via some kind of service. This was all a bit more complex than it needed to be because I decided to be awkward and implement this stuff on a specific page of my website rather than just on the domain itself, but it looks like as long as I include my h-card on the main index page, everything else can live elsewhere. The page in question now has a number of links in its header:

I also had to add to my .htaccess file a line of code that I barely understand, and then I was all set to enact a webmention, so I thought it would be apt to send a like to the tutorial I’d been using. Because I’m on a static site I have to do this manually using another third-party tool called Telegraph, but that doesn’t seem too onerous.

Telegraph told me the webmention was sent successfully, although it’s still not showing up on the post I reacted to; I assume they pull mentions on a schedule, so maybe it just hasn’t been updated yet. I wasn’t that bothered as my main goal was to try this out with Mastodon. For that I had to set up Bridgy Fed, which was why I was required to generate the Atom feed and do the .htaccess stuff. The first webmention I tried sending to Bridgy Fed failed, which turned out to be because I didn’t have an h-card on my site’s main index page; after I embedded one there with the sole component being my “name”, it worked fine.

So the very tasty result of this is that I can reply to a … sigh … toot on my own site, send the webmention, and then that post shows up as a reply to the original … toot, labelled with my “name” and a link to my website. The post I replied to was itself intended for testing this functionality; here’s the page on my site where I posted my reply, and here’s the Mastodon post, with my comment from yesterday among the replies underneath. Once again, I am astounded by the fact that this seems to have worked so smoothly. Maybe I’ll never use it again, but it feels very cool to have the ability to reply to fediverse posts without actually needing to sign up for any of it.