I recently rebuilt my portfolio using Astro — a static site generator that’s been getting a lot of attention. Here’s why I picked it and what I learned.

Why Astro?

The biggest selling point is zero JavaScript by default. Most sites ship megabytes of JS that visitors may never need. Astro flips that — it sends HTML and CSS first, and only adds JS for interactive components that explicitly opt in.

For a portfolio site, that’s perfect. It’s basically a digital business card — it should load instantly and work without JavaScript.

The setup

I paired Astro with Tailwind CSS for styling and TypeScript for type safety. The whole site is a single page with sections that scroll into view. The only JavaScript is:

  1. Dark mode toggle
  2. Scroll-reveal animations
  3. Mobile menu toggle

That’s it. Everything else is static HTML.

Key takeaways

  • Performance — Lighthouse scores in the high 90s without trying
  • Developer experience — Hot reload is instant, file-based routing is simple
  • Deployment — Static output to GitHub Pages, zero server cost

If you’re building a content site or portfolio, give Astro a try. It’s refreshing to work with a framework that optimizes for less JavaScript, not more.