Building This Blog
August 17, 2025

Building this page using Astro, Tailwind, and DaisyUI
Background - Why Astro?
I’ve used and enjoyed Astro for a few projects, for a number of reasons:
- Islands let you use components from different frameworks and decide if and when they’re loaded. It offers performance increases, but it also gives you a lot of options for experimentation.
- On the projects where I’ve used Astro in the past I’ve tried to use frameworks sparingly and lean into html/css or vanilla JS. I’m used to React and had been drawn to Astro to reconnect to the basics.
- Astro uses file based routing. This is supposedly better for SEO, but I just like it better than jacking with React Router.
- Astro encourages using Nano Stores for state, which are framework-agnostic.
Tailwind and Daisy
I’ve gotten used to reaching for Shadcn once again locking me into React. Sticking with the concept of framework agnosticism I’m using Tailwind for coherent styling and the DAISY component library.
The Blog
Astro comes with a content collections API that essentially gives it a built-in headless CMS. It supports writing posts in Markdown or MDX. I’ve wired it up with a GitHub action so it gets published whenever I push the repository, making it really easy to update. Source for this site, including the GitHub workflow can be found here.
Tailwind has a nice plugin for styling text called typography that works great with Markdown. It really simplifies styling free-text.
I’ve been using Helix as my text editor for the last couple of months, and I’ll probably do a post on it in the future, because it rocks. While not limited to Helix, while building this site I found ltex-ls-plus, a language server that adds grammar and spell-checking to your Markdown editor. Integrating it into Helix was very easy using the reference Helix maintains on their Language Server Configurations page.
Why Blogging?
It feels weird blogging in 2025. I’m not great about taking notes, and I have a bad tendency to jump between projects. I’m hoping that trying to publish something occasionally as I’m going along will help with both of those problems. If anyone happens along and is working on the same things as me all the better.
What I’d still like to get working
-
One gripe about the Astro content collections is it doesn’t have a built-in way to do post excerpts, so right now my main page displays the description from the front matter. I’ve seen some ways to work around this, but I’m going to get to that later.
-
I’d like to have a table of contents for my posts. I wanted to get this site up and running, perfect is the enemy of good, so I’ll get to that later as well.
-
A search bar is definitely something that I’ll want to implement at some point.
-
Pagination. Similar to the search bar, it’ll make sense when I’ve got more posts.
So, on the to-do list:
- Excerpts
- Table of Contents
- Searching
- Pagination
I’ll update this page as I get them working.