Volver al inicio
Lección 1: Introducción a Astro

¿Qué es Astro?

Descubre el framework moderno que está revolucionando el desarrollo web con sitios ultra-rápidos y menos JavaScript.

1. ¿Qué es Astro?

Astro es un framework web moderno diseñado para construir sitios web ultra-rápidos centrados en el contenido.

A diferencia de otros frameworks, Astro está optimizado para enviar menos JavaScript al navegador, lo que resulta en páginas que cargan más rápido y ofrecen mejor experiencia al usuario.

Ultra-ligero

Envía 0 KB de JavaScript por defecto

Extremadamente rápido

Páginas que cargan hasta 90% más rápido

Flexible

Usa React, Vue, Svelte o solo HTML/CSS

2. La Filosofía de Astro

Zero JavaScript por Defecto

Astro genera HTML estático sin JavaScript por defecto. Solo añade JavaScript cuando realmente lo necesitas.

Resultado: Sitios que cargan instantáneamente, mejor SEO y experiencia de usuario superior.

Islands Architecture (Arquitectura de Islas)

En Astro, puedes tener componentes interactivos (islas) rodeados de HTML estático.

Visualización de Islands:

HTML estático (Header)
🏝️ Isla Interactiva (Buscador con React)
HTML estático (Contenido)
🏝️ Isla Interactiva (Carrusel con Vue)
HTML estático (Footer)

Ventaja: Solo las "islas" cargan JavaScript, el resto es HTML puro y ultra-rápido.

Centrado en el Contenido

Astro está optimizado para sitios con mucho contenido: blogs, portfolios, documentación, landing pages, sitios corporativos, e-commerce, etc.

2.5. ¿Y si quiero una web completamente dinámica?

¡Sí puedes! Astro puede hacer webs 100% dinámicas usando AJAX/fetch en las Islands. No estás limitado a contenido estático.

Puedes combinar lo mejor de ambos mundos: páginas estáticas rápidas + componentes que obtienen datos dinámicos con fetch/AJAX.

Ventajas vs React/Next/Vue/Nuxt

  • Menos JavaScript inicial: Solo cargas JS para los componentes dinámicos, no todo el framework
  • Carga inicial más rápida: HTML estático se muestra instantáneamente, datos dinámicos cargan después
  • Mejor SEO: El HTML base siempre está disponible para los motores de búsqueda
  • Progressive Enhancement: La página funciona sin JS, mejora con JS
  • Usa cualquier framework: Fetch con React, Vue, Svelte... tú eliges

Inconvenientes vs React/Next/Vue/Nuxt

  • Menos ecosistema para SPAs: Si tu app ES un dashboard complejo, Next/Nuxt tienen más herramientas
  • Sin routing del lado del cliente: Cambios de página recargan el navegador (aunque puedes usar View Transitions)
  • Curva de aprendizaje diferente: Debes entender cuándo usar Islands vs páginas completas
  • Estado global más complejo: Compartir estado entre islas requiere más trabajo que en SPAs

Ejemplo: E-commerce con Astro

Enfoque híbrido (Recomendado):

  • Página de producto: HTML estático generado en build (SEO perfecto, carga instantánea)
  • Carrito de compras: Isla con React que hace fetch al backend (100% dinámico)
  • Buscador: Isla con Vue que consulta API en tiempo real (dinámico)
  • Stock en tiempo real: Isla que hace polling cada X segundos (dinámico)

Balance perfecto: Lo que no cambia es estático (rápido), lo que cambia es dinámico (Islands con AJAX).

3. Ventajas de Usar Astro

1. Rendimiento Excepcional

Astro genera sitios estáticos con 0 KB de JavaScript por defecto. Las páginas cargan casi instantáneamente.

2. Flexibilidad Total

Puedes usar React, Vue, Svelte, Solid, Preact o cualquier framework UI que prefieras. ¡Incluso puedes mezclarlos en el mismo proyecto!

3. Fácil de Aprender

Sintaxis similar a HTML, JSX y Markdown. Si sabes JavaScript y HTML, ya sabes Astro.

4. Excelente SEO

Al generar HTML estático, los motores de búsqueda pueden indexar tu contenido fácilmente sin ejecutar JavaScript.

5. Developer Experience (DX)

Hot Module Replacement (HMR) ultra-rápido, errores claros, TypeScript integrado, y una CLI intuitiva.

6. Ecosistema Rico

Integraciones oficiales con Tailwind, Markdown, MDX, sitemap, RSS, y más de 100+ integraciones de la comunidad.

4. ¿Para qué proyectos usar Astro?

Ideal para:

  • Blogs y sitios de contenido
  • Landing pages y sitios marketing
  • Portfolios personales
  • Sitios de documentación
  • E-commerce (con productos estáticos)
  • Sitios corporativos

No tan ideal para:

  • Dashboards complejos con mucha interactividad
  • Aplicaciones SPA puras (mejor Next.js o SvelteKit)
  • Apps en tiempo real tipo chat (aunque se puede hacer)

Nota: Astro puede hacer estas cosas, pero otros frameworks pueden ser más adecuados.

5. Astro vs Otros Frameworks

Framework JavaScript Enviado Mejor para
Astro ~0 KB (solo islas) Sitios de contenido, blogs, landing pages
Next.js ~90 KB (todo React) Aplicaciones web complejas, dashboards
Gatsby ~85 KB (todo React) Sitios estáticos con React
Nuxt ~80 KB (todo Vue) Aplicaciones Vue complejas
SvelteKit ~30 KB (todo Svelte) Balance entre rendimiento y DX

💡 Nota: Los valores son aproximados para sitios simples. Astro destaca por enviar JavaScript solo donde lo necesites, mientras otros frameworks envían todo el runtime.

Resumen

Astro es un framework moderno para sitios web ultra-rápidos
Zero JavaScript por defecto - páginas que cargan instantáneamente
Islands Architecture - interactividad solo donde la necesites
Usa cualquier framework UI (React, Vue, Svelte, etc.)
Ideal para blogs, landing pages, portfolios y sitios de contenido
Fácil de aprender si ya sabes JavaScript y HTML
Volver al temario Siguiente: Estructura del Proyecto