Syndicate all the things
Posted by:
-
Konstantin
I've been postponing this for a long time but as I was deploying the latest Wagtail update for my blog, I decided it's the perfect moment to finally enable publications. 🤩
{
"url": "https://iamkonstantin.eu",
"name": "Konstantin's Blog",
"$type": "site.standard.publication",
"description": "This is my blog and personal newsletter. I write about building and using software, as well as thoughts and comments about the web, tech and the state of things in general",
"preferences": {
"$type": "site.standard.publication#preferences",
"showInDiscover": true
}
}
In addition, I used the opportunity to enable cross-posting to Mastodon and Bluesky from within the CMS. This will dramatically reduce the amount of manual work I need to do when announcing updates for my apps.
Bluesky integration is powered by the community Python SDK and Mastodon integration is provided by Mastodon.py.
Thanks to my work on TootSDK, I already knew my way around the Mastodon API and was even able to incorporate server settings into the CMS platform. For example, it will check my server's post length size and split longer posts into a thread automatically. Attachments and content warnings are also supported.
In short, another layer of overengineered goodies has just landed on my blog. The good news is, now I can focus more on layout improvements (the current theme is from 2022), removing Tailwind in favour of my currently preferred BEM-style CSS.
My content strategy for 2026/2027 will focus on consolidation and syndication. I maintain quite a large number of static pages (mainly websites for my apps and libraries) which makes updating them a bit of a chore. So going forward, I will be bringing them into this instance as separate Wagtail sites and (probably) their own separate Django apps.