2025 Website Refresh and Migration
I’ve had a personal website for nearly 30 years, and a personal blog for nearly 25. For the last 15 years or so I’ve used Wordpress to host both, but for various reasons I decided it was time for a change.
The new world
I’ve used a couple of “static site generators” for my work sites, and this one uses a similar tool - Eleventy. I chose Eleventy partly because it’s popular in some of the online communities I frequent these days, and also because it’s implemented in JavaScript - a language that I’ve become fairly familiar with of late.
The site is hosted on AWS using CloudFront and S3, and deployed with CDK, since I’m very familiar with doing this. :)
Migration process
The migration is complete as of November 2025, but I actually started this process about a year ago.
At that time I downloaded an export of my Wordpress site source, and also scraped the rendered version of the site (I think with SiteSucker, but it might have been something else). I created the AWS hosting at that time, uploaded the scraped version to AWS, and switched over DNS.
That got me off of Wordpress hosting but now I couldn't make any changes, plus also the rendered version had all kinds of Wordpress gunk in it. So the migration was only half complete.
I knew there were a bunch of tools out there that could help in the move from Wordpress to Eleventy but since I just got a bunch of Claude Code on the web credits this month I decided to let an LLM take a swing at it. I created a GitHub repo containing both the Wordpress export, and rendered site, told Claude I wanted to use Eleventy and keep all my links working, and let it go.
The first pass - which didn't take Claude long, just a few minutes - actually did the bulk of the migration work pretty successfully and saved me a huge amount of time setting the base system up, and migrating all my posts. I knew I was hosting in CloudFront, and so I'd also told Claude to extend the existing CloudFront function to handle redirects.
There was really only one miss, which is Eleventy's (in)famous off-by-one problem for dates. Given some direction Claude fixed that.
Apart from that there were a bunch of iterations on mostly styling and navigation changes - which weren't so much migration as me wanting to change things up with the new system.
Maybe now I have a new site I'll post more. :)
Feeds are working of course, and there even category feeds. See here
If you see any problems or have any questions the drop me a line, or contact me at @mikebroberts@hachyderm.io on Mastodon, or at @mikebroberts.com on BlueSky.