This is a riveting post about how I migrated this site from Hugo to Astro.

There were two primary reasons:

  1. Astro is similar to other modern front end frameworks, which is good for keeping in practice versus using Hugo’s project structure and Go style templating, which I don’t use in any other project.

  2. Astro makes it easy to build pages, or sections of pages, using pretty much any modern framework, mixing and matching as you like, which is good for building out a portfolio showing competency in different frameworks.

As an example of #2, I built this simple timer as a SolidJS component with a <canvas> progress bar that uses HSL colors to indicate how much time is left (it’s nothing special—I just use timers a lot).

Issues

Hugo makes it really easy to add RSS feeds for posts, categories, and tags. In fact, if I remember correctly, you don’t have to do anything for Hugo to generate RSS feeds. With Astro, this process is more manual and perhaps more error-prone.

Other than that, migrating was a breeze. I didn’t have to make any changes to the Markdown files containing page and post content, and deploying the new version to Netlify was also straightforward, requiring just a few clicks.