Mi primera entrada con Astro

Así funciona el flujo de publicación con Astro y Cloudflare Pages: escribe Markdown, haz push y tu web se actualiza sola en segundos.

Esta es la primera entrada del blog. Un buen momento para comprobar que todo el sistema funciona: el schema de Content Collections, el layout de BlogPost, el sitemap y el deploy a Cloudflare Pages.

Cómo funciona

Cada entrada del blog es un archivo Markdown guardado en src/content/blog/. Astro lee el frontmatter, lo valida contra el schema definido en content.config.ts y genera la página estática correspondiente en tiempo de build.

El slug de la URL viene dado por el nombre del archivo: primera-entrada.md se publica en /blog/primera-entrada. No hay base de datos, no hay servidor: todo son ficheros HTML generados de antemano.

Próximos pasos

Algunas mejoras planificadas para el blog:

  • Añadir paginación en el listado de entradas
  • Crear una página de tag para filtrar por categoría
  • Integrar imágenes de portada con el componente <Image> de Astro
  • Conectar la parte dinámica con Supabase para custom post types
  • Configurar el dominio definitivo y actualizar site en astro.config.mjs
# Crear una nueva entrada
touch src/content/blog/nueva-entrada.md

# Arrancar el servidor de desarrollo
npm run dev

# Generar el build de producción
npm run build

# Subir cambios y disparar el deploy en Cloudflare Pages
git add . && git commit -m "feat: nueva entrada" && git push

Con esta base ya tienes un flujo de publicación completo: escribe en Markdown, haz git push y Cloudflare Pages actualiza la web en cuestión de segundos.