Although I’m one of those people who doesn’t really approve of starting Christmas too early, and will get my grinch on if I hear festive songs before the beginning of December, I make an exception for mince pies. At the beginning of October, my thoughts turned to the side project I built for my wife last year - Máiréad’s Mince Pie Monitor.
It’s a pretty simple idea, really - we taste-test as many mince pies as we can, and we give them a score. Then we put the scores and the pictures on a website. How hard can it be?
Requirements gathering
Much as I wanted this to be a lightweight side-project, I didn’t want to just sit down and start coding (or even vibe-coding 🤮) without giving a bit of thought to how it should all work. After a quick chat on the sofa with my favourite product owner, I came up with some basic principles:
- It should be easy to create and edit content on a mobile phone.
- The design should be unobtrusive and vaguely Christmassy
- It shouldn’t cost us money (the project budget is already allocated to buying mince pies)
- There shouldn’t be any hassles for me in terms of maintenance:
- There shouldn’t be lots of dependencies to keep updated.
- The build process should be simple and as automated as possible.
Content editing
The whole point of the website is to share information, so I wanted to start with the content and how it would be managed. Last year I’d used Contentful as a CMS, and I’d been disappointed by the lack of thought put in to the editor experience. I also didn’t want to be dependent on an external service that might disappear, particularly given that the content probably won’t be edited again after a couple of months.
If it had just been me, I’d have probably just managed markdown files in the repo, but persuading my wife to learn how to edit files via GitHub isn’t my idea of a good way to spend our time together. I wanted a solution that would be as low-maintenance as possible, while still feeling like a CMS, and I found PagesCMS, which seems to fit the bill. All the content and configuration is maintained in the code repository, and the process to define simple fields and content types is fairly striaghtforward and well documented. The big advantage for me compared with Contentful is that the editing interface is clean, simple and responsive, letting us upload the all-important pie photos from a phone. I wouldn’t use it for an enterprise system, but for this kind of project, it provides exactly what I need.
Front end
I’d been meaning to try building something with Astro for a while - I’d heard good things about it from colleagues, and it seemed like a good fit. I like what I’ve read about its underlying philosophy - it seems to put the needs of users before the needs of developers, but it’s also pretty easy to use. Importantly for a grumpy old man like me, it lets you author actual HTML with proper attributes like “class”, not the nasty camel case stuff that React forces you to write.
With the help of a Pages CMS template in the astro docs that helped me get my head around the basics, I was pleasantly surprised by how easy it was to get started. I know that this is about as basic as a site gets, but it all just seemed to work, everything felt logical and sensible, and as promised, the Lighthouse accessibility and performance scores were very high.
I kept the Tailwind approach from last year, even though the utility classes give me the creeps, and feel like a betrayal of my old school front end principles. Maybe next time I’ll explore alternatives, but this was the path of least resistance.
Hosting
I’ve used Cloudflare as a CDN for a long time, but recently I’ve been looking at using Cloudflare Workers to host static sites.
This whole thing is basically an excuse to eat mince pies, so I didn’t want to be messing about with a complicated deployment process every time we wanted to publish a review.
Cloudflare provide an easy-to-follow deployment guide for Astro and other frameworks, and within a few minutes I’d got it all plugged in to GitHub Actions, so that every time we publish a change in the CMS, it automatically triggers a deployment.
The whole thing feels so much easier than managing my own server and keeping on top of security patches, and makes my side projects feel more professional, while saving me time and hassle.
🥧
So without further ado, I proudly present Máiréad’s Mince Pie Monitor 2026. It definitely feels like an improvement on the 2025 edition, and I’m pretty pleased with how easy it has been to build and deploy with this stack. I’m tempted to migrate my blog from Gatsby to Astro, and maybe even move the hosting to Cloudflare Workers, but that can wait until I’ve got a bit more time on my hands - for now it’s time to go and attend to the important business of tasting some more pies.