Ando's

¿Qué es Astro?


Astro es una maravilla. Si construyes un sitio basado en contenido, usa Astro.

Es un framework para generar sitios web enfocados en el contenido bajo el paradigma MPA (Multi Page Application) con una experiencia de desarrollo brutalmente buena, similar a la que tenemos desarrollando una SPA (Single Page Application).

En Astro el routing se hace en el servidor, o bien porque el servidor renderiza el contenido en función de la URL de forma dinámica, o bien porque este contenido ya ha sido pre-renderizado en tiempo de compilación.

Sin Javascript por defecto

A no ser que así lo desees, Astro no utiliza javascript en el navegador.

El workflow habitual es trabajar desde javascript mientras se desarrolla, pero luego se renderiza HTML estático que no incluye Javascript. Si queremos Server Side Rendering, utilizaremos javascript también en producción, pero solo en el servidor.

Si a pesar de todo esto quisieramos incluir javascript para ejecutarlo en el navegador del usuario, podríamos. La forma más sencilla es incluir un bloque <script></script> en el template de un componente, e implementar ahí nuestro código.

Pero también pueden utilizarse las islas (Islands) para servir componentes creados con un framework de JS (React, Vue, Solid, etc).

Las islas

El concepto de Islands es de las características más innovadoras de Astro.

Podemos definir componentes por separado que utilicen una estrategia de renderizado específica. Por ejemplo, podemos servir toda la página como HTML previamente generado y luego, solo tras la carga, renderizar un componente específico en el cliente. O sólo cuando sea visible.

Esto además nos permite cargar componentes creados con distintos frameworks en cada isla.

¿A qué esperas para usar Astro? Dirígete a su web para empezar. Además tienen una documentación muy completa y en español.