22.00.0059: RSS feed fixed

I am over the moon to announce that this site’s RSS feed is now a first-class, fully-featured, all-singing-all-dancing full-text rich-image over-hyphenated feed!

This hasn’t been the case, as those of you who follow the feed will know. I use Astro to create this site, and where I need to do something a little special — my images, little blocks of JD content, and so on — I write Astro ‘components’.

They’re little bits of JavaScript that get built to the final HTML that you see. This is one of the reasons I love Astro[1] — I can use JavaScript to put it together, but you only get served static HTML.

That’s why this page only uses about 500KB of data.[2] Compare that with Australia’s Big W which loads a whopping 9MB: 18x the size!

But, these Astro components didn’t render nicely to the RSS feed. I tried to catch most of the jankiness and replace it with a little apology and a link to the reason why, but a) that’s still janky, and b) some slipped through.

I hated this. But fixing it myself was implausibly difficult and time consuming. And I knew that if I waited long enough the good folks at Astro would fix it for me (and the thousands others all clamouring for the same solution).

Astro 4.9’s Container API

With Astro 4.9, there’s now an experimental feature that fixes the issue. Thanks to delucis on GitHub, after some tweaking of their file to suit my site, the feed looks much better.

Images load inline. Footnotes render. And my own components at least display, even if they don’t look perfect. It’s good enough for now.

This is all free

It’s worth noting that Astro is entirely free. For this, I am very grateful.

It shouldn’t break your feed

I’ve tested it, all GUIDs and slugs remain the same, and for me, it’s seamless. You shouldn’t see a bunch of old stuff suddenly re-appear, or become marked as unread, or whatever.

But, y’know, something will inevitably break for someone. If that’s you, I’m sorry.

Prove it works

If you insist.

What’s RSS?

If you don’t know what RSS is, this page is a great introduction.

  1. Which is but one of a handful of ‘static site generators’ that have come about in the last few years. 11ty is another that I have my eye on. ↩︎

  2. On first load. Caching brings subsequent page loads down to about 50KB, depending on the page. That’s very tiny indeed. :slight_smile: ↩︎