Our website uses a variety of common components found on many sites: consistent navigation with headers and footers, page hero variations, 50/50 content splits, three-up layouts, search-based components like recent blog posts, standard search with facet filters, forms, and more. This made it an ideal test ground for evaluating new technologies.
Originally, the site was built with Next.js. So, why did we choose to rebuild it with Astro.js, even though the content remained the same? Simply put, we were intrigued by what Astro.js offered but wanted to ensure it was truly worth the hype before recommending it to our clients.
Astro.js offers a very clear separation of concerns between server-side and client-side rendering. In Astro, server-side JavaScript logic is typically placed at the top of the .astro file, followed by HTML elements for presentation, and, if needed, client-side JavaScript can be added at the bottom. This clean separation makes it easier and faster for developers to build pages and components.
Astro.js supports multiple frameworks with direct integrations, making it a flexible choice if you need reactive client-side components. As of this writing, integrations are available for React, Vue, Angular, Svelte, and more. For a full list of current integrations, visit Astro Integrations Guide. During our migration, we converted our search and form-based components from Next.js to React components within Astro, and the process was straightforward.
Astro.js has a shorter learning curve, making it easier to onboard developers with basic JavaScript skills, even if they have limited experience with frameworks. For developers already familiar with frameworks like React, Vue, or Angular, the transition to Astro.js is quick. In comparison, Next.js requires a solid understanding of React, and moving from React to Next.js involves an additional learning curve.
In our view, most new projects starting today should consider Astro.js as their server-side rendering framework. Its clean architecture, flexibility, and ease of use make it a compelling choice.
However, there are valid reasons why some organizations might choose to stick with Next.js:
In summary, while Astro.js offers significant advantages for many use cases, the decision to switch depends on your project’s specific needs and your team’s existing experience and infrastructure.
The team at Given Data LLC continuously monitors advances in the content management space, keeping us ahead of the competition. Urgent need? call us