Astro
Qué estás aprendiendo
Sección titulada «Qué estás aprendiendo»Astro es un framework web que convierte componentes y datos en HTML. Su característica central no es “ser estático”, sino permitir decidir cuánto JavaScript y qué tipo de render necesita cada parte del sitio.
componente .astro → se ejecuta en build o servidor → produce HTML → no incluye runtime cliente por defecto
interacción necesaria → script pequeño del navegador → Web Component → isla React/Vue/Svelte hidratadaEl resultado predeterminado es HTML prerenderizado. Una ruta puede pasar a render bajo demanda cuando necesita cookies, sesión o datos por request. Una isla cliente es otra decisión: añade interactividad en el navegador, independientemente de cómo se obtuvo el HTML inicial.
Elige tu forma de entrar
Sección titulada «Elige tu forma de entrar»Quiero aprender Astro desde cero
Sección titulada «Quiero aprender Astro desde cero»Sigue el orden del sidebar. Empieza por Primeros pasos y Estructura y configuración. Después construye componentes, páginas y layouts antes de estudiar hidratación, Actions o middleware.
En cada documento:
- identifica si el código corre en build, servidor o navegador;
- predice el HTML o la respuesta que producirá;
- ejecuta el ejemplo y revisa Network y el HTML recibido;
- cambia una condición estática por otra dependiente de la request;
- comprueba
astro checkyastro build.
Ya uso Astro y quiero recordar
Sección titulada «Ya uso Astro y quiero recordar»| Necesito | Documento |
|---|---|
| crear proyecto, comandos y estructura | Primeros pasos |
astro.config, site, base, output | Configuración |
| props, slots y composición | Componentes Astro |
| rutas fijas, dinámicas y redirects | Routing |
| layout, slot y contenido Markdown | Layouts |
Astro.props, params, url, cookies y locals | Objeto Astro |
| estilos scoped, globales y variables | Estilos |
| scripts de navegador y eventos | Scripts |
| SSG, SSR, adapters e hidratación | Modos de renderizado |
| contenido tipado y loaders | Content Collections |
client:* | Islas de UI |
server:defer | Server Islands |
| formularios y mutaciones tipadas | Server Actions |
| requests HTTP públicas | Endpoints |
| auth, redirects y contexto por request | Middleware |
Curva de aprendizaje
Sección titulada «Curva de aprendizaje»Etapa 1: producir documentos
Sección titulada «Etapa 1: producir documentos»- Instalación, comandos y estructura.
- Configuración y diferencia entre
srcypublic. - Componentes
.astro, props, slots y composición. - Routing basado en archivos y rutas dinámicas.
- Layouts y jerarquía del documento.
- Sintaxis de plantilla, directivas y objeto
Astro.
Al terminar debes poder construir varias páginas reutilizando componentes sin enviar JavaScript innecesario.
Etapa 2: presentación y navegador
Sección titulada «Etapa 2: presentación y navegador»- Estilos scoped, estilos globales y assets.
- Scripts procesados, eventos y datos serializados.
- Imágenes con
astro:assets. - Render estático, on-demand e hidratación.
- Fetching y manejo de errores.
Al terminar debes distinguir trabajo de servidor y navegador, además de medir qué JavaScript recibe la página.
Etapa 3: contenido y generación
Sección titulada «Etapa 3: contenido y generación»- Content Collections, schemas, loaders y referencias.
getStaticPaths()y paginación.- MDX cuando Markdown necesita componentes.
- Internacionalización y URLs por idioma.
Etapa 4: interactividad progresiva
Sección titulada «Etapa 4: interactividad progresiva»- Islas cliente y directivas
client:*. - Server Islands y contenido personalizado diferido.
- Prefetch y View Transitions como mejoras progresivas.
- Integraciones de framework o herramientas externas.
Etapa 5: capacidades de servidor
Sección titulada «Etapa 5: capacidades de servidor»- Variables de entorno y separación de secretos.
- Endpoints y objetos estándar
Request/Response. - Actions para mutaciones internas y formularios.
- Middleware para contexto, autorización, redirects y rewrites.
- Sessions, autenticación, adapters y arquitectura backend cuando el producto lo requiera.
Glosario mínimo
Sección titulada «Glosario mínimo»| Término | Significado |
|---|---|
| prerender o SSG | generar HTML durante el build (Static Site Generation) |
| SSR | generar HTML al recibir una request (Server-Side Rendering) |
| hidratación | conectar runtime y eventos del framework a HTML existente |
| isla | región interactiva aislada dentro de una página mayormente HTML |
| adapter | integración que traduce la salida de Astro al runtime de despliegue |
| endpoint | archivo de ruta que responde con un objeto Response |
| Action | función de servidor tipada invocable desde una UI o formulario |
Cuándo elegir Astro
Sección titulada «Cuándo elegir Astro»Encaja especialmente bien en documentación, marketing, blogs, catálogos, portfolios y aplicaciones donde gran parte de la pantalla es contenido. También puede crear productos dinámicos, pero conviene conservar su ventaja: empezar con HTML y añadir runtime solo donde aporta valor.
Una aplicación donde casi toda la pantalla depende de estado cliente compartido, colaboración en tiempo real o navegación altamente interactiva puede encajar mejor en un framework centrado en React. La pregunta no es si Astro “puede”, sino qué modelo mantiene el proyecto más simple.
Regla de arquitectura
Sección titulada «Regla de arquitectura»Empieza estático. Si un dato depende de la persona o de la request, vuelve dinámica esa ruta o ese bloque. Si una interacción necesita estado del navegador, crea la isla más pequeña que conserve una API clara. Esta secuencia evita convertir una necesidad local en costo global.