Switching to Astro
I’ve gotten the itch to switch up my website recently. Previously it was build with hugo. I think hugo is pretty great. I really like the idea of generating a static website for a personal blog because it’s super easy to host for free using a variety of different hosting services. Now of days there are even integrations that will build from the source code and directly publish the website so you don’t need to do this step manually.
Things I had a hard time with Hugo
One of my biggest complaints about hugo was that the themes were pretty low level and how to modify as a end user. One of the reasons hugo is so fast is it’s templating language. But it was complicated for me to use. Whenver switching to a new theme I’d have to git clone the theme template. And then every theme had it’s own options to configure in ithe website’s config.toml. This made it hard to try out new themes because they could not be tried with low friction. Once all of the settingcs were configured then you could correctly look at the website, but that took a long time to get configured just to see an example of it applied to your website.
Another complains I had about hugo templates was that the templates were all located in a git submodule. This made it hard to configurate the template for my websie’s usecase since it required modifying a vendor’s dependency. I’d have to fork the git repo if I wanted to make any changes. This was pretty high effort just to tweak a theme that is used for the blog.
Also from my limited knowledge of hugo it seemed that templating of hugo was pretty low level. Editing html, javascript, css files manually, etc… I don’t know a lot about web development, but this was very intimidating to make the changes I wanted to make. I had to have deep knowledge of the web frameworks the hugo templates used in order to make any useful changes.
Reasons I picked Astro
I’ve looked into a couple options and Astro stood out to me.
I liked that it was a static website bulider so I could host it for free on a variety of hosting platforms.
I liked how the site generation was custamizable using a variety of front end systems like React or Vue, etc… Gives the ability to custimize the frontend. Hugo seemed to be limited to using whatever framework the theme specified so there wasn’t a lot of room to add custom logic to the site.
Astro supported converting markdown posts into posts which is covienient for authoring pages from my local machine. RSS generating was also pretty easy to set up as a route.
I’m pretty behind the times since Astro seems pretty popular now. I haden’t really even heard of it until switching my blog over to it. I’ve choosen the basic theme that comes with base template. In the future I’ll look into using a more iteresting theme. But for now I’ve started by just porting over the basics.
That’s it for now. Just wanted to share an update why the site looks different now.