Close-up photograph of an onion slice.

I’m pleased to announce two new open-source code libraries for the Perl 5 programming language, my first contributions to the CPAN in well over a decade. They represent a significant milestone in a side-project I’ve quietly but obsessively pursued for the last couple of months, some effects of which have become immediately visible on this blog.

Getting the nitty-gritty out of the way: Web::Microformats2 can parse, query, and serialize HTML documents marked up with Microformats2 metadata. Web::Mention provides a Perl object representation of Webmention-adherent HTTP requests, with methods to verify, determine authorship, and extract content from valid mentions. Both modules are free and open-source, released under the MIT license.

The modules bring to Perl two of the many “building block” concepts espoused by IndieWeb, a relatively small but worldwide community promoting technologies and policies that encourage people to self-host their web-based content. I have a lot of thoughts about the surprisingly impressive and frustratingly obscure IndieWeb movement that I plan to explore in a future post. For now, allow me to describe my specific attractor to it, and how I’ve implemented it for the sake of my own blog.

After I saw it in action on Watts Martin’s blog in February, the particular IndieWeb concept of backfeeds struck me as a killer app, and I knew immediately I wanted it for Fogknife. A website with a backfeed pulls reactions to its content from across the web, sorting them all together and representing them meaningfully on its own pages. This felt like an obvious next direction to move in after my brief experiment with Disqus and my subsequent and somewhat more successful use of posts aware of their own Twitter-links.

Starting a couple of days ago, Fogknife began running on an experimental and unreleased branch of Plerd. It uses both of my new Perl modules to make backfeeds possible, and you can see a live early example underneath this post about my recent read-through of a new Odyssey translation. All the facepiles and comments come from Twitter reactions to that article. (The bridging step between the suddenly IndieWeb-enabled Fogknife and Twitter, a silo that doesn’t give a hoot about any of this stuff, is the aptly named Bridgy service run by Ryan Barrett and Kyle Mahan.)

I consider these modules unstable and fragile, and use Fogknife as their live-fire proving grounds — via the Bridgy-fed backfeeds as well as the manual webmention-suggestion form that currently appears under every post. I expect therefore Fogknife’s support for webmentions and backfeeds to start out rather wobbly, but I do plan to continue improving it by increments, with all such improvements carrying over into new releases of the public Perl modules as appropriate.

When everything seems reasonably stable, I’ll follow up with an official Plerd release so that other bloggers may squeeze similar magic from my humble little publishing platform. Until then, I hope that the rather nerdier Perl modules will prove interesting to my fellow web-worried programmers.

Share or reply to this post on Twitter, or elsewhere.

Next post: I am playing This is the Police

Previous post: The stories of Ashrind’s stickers

Responses from around the web...


C. JAmes Collier avatar
Joel Berger avatar
Iain Merrick avatar
Sean Gregory avatar
Joe Johnston avatar
Chris Aldrich avatar
Tamarou LLC avatar


Joe Johnston ➡ NarraScope avatar
Tamarou LLC avatar

Other webpages that mention this post

Matt "Bodger Extraordinaire" Trout

This is fascinating and well worth a look. Shall have to try and remember to RT the post talking more about indieweb in general once jmac finds the CFT to write it.

Peter Stuifzand

Fogknife : Announcing two new IndieWeb modules for Perl (3 minute read)

Jason McIntosh

I’m a weird place with Perl (and so is Perl)

A meditation on my relationship with Perl, and Perl's relationship with the world, 20 years after I started using it.

Jason McIntosh

Rejecting the “Post-web era” while embracing The Future

My response to Nick Montfort's recent article asserting that the era of the open web as the main platform for digital writing has forever passed.

Jason McIntosh

A bit of IndieWeb pushback

My admittedly somewhat agitative article about IndieWeb received some excellent critique from that community's core constituency.

Jason McIntosh

Looking back at my 2010s

Having arrived at the concluding day of a year that ends in “9”, I can’t not take stock.

Jason McIntosh

I read Mojolicious Web Clients

Thoughts on the new book by brian d foy about the Mojolicious web toolkit, and about Mojo's role in the Perl ecosystem.

Jason McIntosh

Webmentions, active and passive

An overview of two major use-case types for Webmention: passive commentary on other posts, and active requests for other websites to respond.

Suggest a new mention

If a page elsewhere on the web responds to or otherwise mentions this post, you may provide its URL here.