In the past few weeks, I've been looking at integrating Webmentions. After doing parts of the integration job, I've gained an appreciation for the tech. Webmentions allow you to discover and link disparate conversations about your content. There's a lot of technologies that achieve that, but Webmentions is pretty simple, all told. Here are my experiences with it.
I sort of wanted a comments section, without actually having a comments section. Nobody wants to have a conversation on this site! They're perfectly happy having conversations elsewhere, and I'm more interested in being able to link those. But automatically.
One thing I'll note is that the Webmention protocol is really simple. Sending a Webmention is pretty easy to script. I'd go as far to say, it makes a pretty good example of a spec, as the protocol itself so simple the details sort of melt away.
Like most things to do with blogging, if you're using a WordPress instance or something, rolling out Webmentions seems trivial. If however, like me, you're running a static site generator it's going to depend on your generator. the more popular static site generators will usually have plugins to do this. I know that's true for Gatsby at least, so even if you're using a static site generator, all is not lost.
If you, like me, are using a more niche generator (Zola) or hand-rolling your own, it's a little more involved. That's probably fair enough - I knew that going in.
Note that I haven't finished this bit. I'm receiving the Webmentions, I'm receiving mentions from various places, but I've yet to add the mentions to the posts themselves. A project for another weekend.
The bit I missed, was the whole Microformat thing. In hindsight, this makes a lot of sense - the content needs to be somewhat machine-readable to be used by other sites. These are expressed as a specific set of class attributes on elements in your content. For example, I've marked up the content of this post with an h-content attribute, so an Indieweb compliant parser can determine the content.
I ended up implementing the
h-card to varying degrees. h-entry describes content such as a blog post.
h-card describes your identity across the Indieweb. It was pretty easy to add to the templating system used by Zola.
This isn't required for Webmentions, but it feels advisable. Basically put, Microformats enable sites sending and receiving Webmentions to provide more metadata. This includes things like who sent the Webmention, and a summary of their content. Without Microformats, Webmentions becomes superficially similar to Trackbacks and Pingbacks. It would be good to draw a clearer relationship between the ways that Microformats enhance Webmentions.
Lobsters is a site I love that dispatches Webmentions for linked URLs - but even I'll concede it's a little more niche. Generally speaking, that's true for most sites that dispatch Webmentions. That's fine, but generally, if there is a conversation about something I've written, it's on Twitter, Reddit or HackerNews. Now, these don't dispatch Webmentions by default, but Brid.gy is a way of, well, bridging that gap.
It works without fuss. Step one, you specify your domain in your social media profile of choice that Brid.gy supports. Brid.gy can keep an eye out for interactions with your content and dispatch Webmentions to your endpoint. This enables you to link to these conversations going on in these (relative) silos without needing to do specific integrations.
The Twitter integration works pretty well. I can't make the Reddit integration work, and it'd be great to have a HackerNews integration. To be honest, it wouldn't be too tricky to write and roll out a HackerNews script myself. All in all though, Brid.gy starts to open up those social media silos - and I'm not sure I'd use Webmentions without it. Too much of the conversation happens on these sites to ignore them.
I don't know if Webmentions is the best way to achieve this (and it's certainly not the only way). It's an active standard that is simple - depending on your blog engine, it may be trivial to add to your site! Webmentions by itself does a job, but when combined with Brid.gy for me, it starts to become truly useful. And in that, I realised something about my motivations. I'm keener on being able to link to conversations happening elsewhere, wherever they may be.