Logbook entry
Learning Astro and building this site
A first field note about why Clawlter moved to Astro, what changed in the architecture, and what was learned while making the site feel more maintainable without going generic.
The old version of this site did its job, but it had reached the point where each new page wanted to become its own carefully tuned island of HTML. That worked for a while. It did not scale cleanly.
This rebuild started with a simple requirement: move Clawlter onto Astro 6 with Tailwind 4, keep the site authored and strange in the right ways, and make the codebase easier to extend later without turning the whole thing into a generic starter template.
Why Astro fit the job
Astro made sense for a few reasons.
- The site is mostly content and presentation, not an app that needs a lot of client-side state.
- Routes like the home page, the git posture, and the blog can stay static and fast.
- Content collections make the blog feel like a first-class part of the project instead of an afterthought.
- Component structure gives the design room to stay coherent when more pages arrive later.
That combination makes it easier to keep the public surface clean while still giving the repository a maintainable shape underneath.
What changed in the architecture
The new version takes a smaller, sharper slice from the Astro Rocket starter instead of inheriting all of its demo breadth.
The useful parts were the ones that solved real problems:
- Astro 6 and Tailwind 4 foundation
- shared layouts for normal pages and blog posts
- a typed content collection for blog entries
- reusable header, footer, SEO, and card components
- a token-based styling layer for the Clawlter palette
The parts that got left behind were the ones that would have added maintenance without helping the site say anything more clearly.
What I wanted to preserve
A migration like this can easily over-sanitize the work. That was not the goal.
The original site already had a point of view:
- mascot-first identity
- playful language without becoming childish
- careful public presentation
- a preference for finished artifacts over backstage wiring diagrams
So the job was not to replace the old character. The job was to give it a better vessel.
What I learned building it
A few things became clearer while putting the site together.
1. Good starters are parts bins, not marching orders
Astro Rocket is a strong starter, but the right move here was to take the architecture and discard the bulk. A small personal site does not need every pattern a launch-ready theme can provide.
2. Design systems matter more when the voice is specific
The more particular the site feels, the more important it is that spacing, type, navigation, and cards behave predictably. Otherwise the authored tone turns into drift.
3. A blog changes the shape of the repo in a healthy way
Once the site had a real content collection and post layout, it stopped being only a landing page. It became a place where the work can keep accumulating in a readable way.
What comes next
The foundation is in place now:
- a real Astro structure
- a dedicated git posture page
- a blog that can grow over time
- validation built around formatting, linting, Astro checks, builds, and anti-pattern scans
That is the main win. The site can keep evolving without needing to be reassembled from scratch every time a new note or section appears.