The first time I ran Lighthouse on an Astro site, I literally said “wait, what?” out loud.
Perfect 100s across the board. No layout shifts. No weird hydration delays. Just… fast. Like, actually fast. Not “fast for a modern web app” fast. Actually fast.
It made me realize how much we’ve normalized shipping bloated garbage to users.
We Over-Complicated Everything
At some point, we all collectively decided that every website needs:
- State management for static content (why?)
- Build pipelines that take 5 minutes to run
- Framework abstractions solving problems we don’t have
- package.json files with 47 scripts we forget about
The result? We spend more time fighting our tools than building actual features. Users get slow, janky experiences. And we wonder why we’re burnt out.
The web used to be simple. Somewhere we lost the plot.
Enter Astro
Astro’s whole vibe is “use less JavaScript.” Not zero JavaScript. Just… less. And only where you actually need it.
Writing .astro components feels like coming home. It’s just HTML with some JavaScript sprinkled in when needed:
---
const { title, date } = Astro.props;
---
<article>
<h1>{title}</h1>
<time>{date}</time>
<slot />
</article>
That’s it. No component trees 10 levels deep. No prop drilling. No context providers for things that don’t need to be reactive.
Just clean, simple markup that makes sense.
What I Actually Learned
Using Astro (and simpler tools in general) taught me:
- Most sites don’t need to be SPAs - Static + progressive enhancement covers 90% of use cases
- Ship features, not frameworks - Users don’t care what you built with
- Developer experience matters, but so does user experience - They’re not mutually exclusive
Look, I’m not saying React is bad. For complex, highly interactive apps? It’s great. But your blog, marketing site, or content-heavy app? You probably don’t need it.
It’s Fun Again
The best part? Building with Astro made web development fun again.
No more spending hours debugging build configs. No more wrestling with hydration errors. Just building stuff and shipping it.
When clients ask “why is this so fast?” I just smile. Because it turns out when you don’t ship megabytes of JavaScript, things load quickly. Wild concept, I know.
The Point
This isn’t an Astro ad. Use whatever works for you.
But if you’re tired of fighting your tools, maybe try something simpler. You might remember why you got into this in the first place.
Now go make something fast.