Astro first impressions

Mar 24, 2025 5 min

I’ve been exploring Astro for building my app’s public-facing website, and after just a week, my first impressions are very positive.

Here’s a bit of context: initially, I built my public-facing website using React. While Google’s bots could handle crawling my JavaScript-rendered pages, many other web crawlers struggled.

To improve the crawlability and SEO performance of my site, I began researching Next.js, which seemed promising due to its server-side rendering capabilities. However, as I dug deeper, I realized Next.js leans heavily towards full-stack solutions, which felt a bit excessive for my needs.

Enter Astro — a lightweight, flexible alternative. It seemed interesting, so I decided to give it a try.

What I like about Astro (so far):

  • Quick and easy setup: Within minutes, I had a project up and running.
  • React-friendly: If you’re coming from a React background (like me), Astro feels familiar and intuitive.
  • SEO-focused: Astro automatically generates sitemaps, making SEO optimization straightforward.
  • Tailwind support: As a fan of Tailwind CSS, built-in support was a significant bonus.
  • Markdown integration: Astro makes it effortless to create pages using Markdown, ideal for blogging.
  • Flexible rendering: You can choose between static site generation (SSG) or server-side rendering (SSR), depending on your requirements.

And these are just the benefits I’ve found so far.

Room for Improvement

The main drawback I’ve encountered so far is the lack of comprehensive documentation around deploying Astro in containers. As someone accustomed to containerizing my projects, this gap made deployment a bit trickier than expected. However, I’ve found some helpful community resources that filled in the gaps:

What’s Next?

There are still Astro features I’ve yet to explore, such as Astro Islands — partially interactive components that load independently — and experimenting with integrating React components, particularly exploring libraries for state management or dynamic UI interactions.

I’m looking forward to continue experimenting with Astro, and will be sharing more insights as I delve deeper into the framework and its ecosystem.

~Scott Burton