Ir al contenido

SITIO — sitio estático del archivo

El corpus markdown se publica como sitio estático con Astro + Starlight. No hay que mantener nada a mano: un paso de sincronización lee todo el .md del workspace y lo renderiza. Cualquier fichero nuevo que pongas en entidades/, fuentes/, hitos/, etc., aparece solo en el sitio en el siguiente build.

  • scripts/sync-content.mjs recorre el repo y, por cada .md, deriva title (del primer # H1) y description (de la primera cita > …), retira ese H1 del cuerpo y escribe el resultado en src/content/docs/ (carpeta generada, ignorada por git).
  • astro.config.mjs lo ejecuta en cada dev/build y construye la barra lateral agrupada por carpeta (Hitos, Entidades, Fuentes, Cartografía, Cosmología, Calendario, Obra, Glosario, Plantillas) + el grupo Taller (ESTADO/BACKLOG/BITACORA/CLAUDE).
  • La portada es el README.md. La búsqueda (Pagefind), el sitemap, el modo claro/oscuro y el responsive vienen de serie con Starlight.

No edites src/content/docs/: se regenera y se sobrescribe. Edita siempre el .md fuente.

Ventana de terminal
npm install # una vez
npm run dev # servidor local con recarga en caliente → http://localhost:4321
npm run build # genera el sitio estático en dist/
npm run preview # sirve dist/ para revisarlo
npm run sync # regenera src/content/docs/ a mano (opcional; dev/build ya lo hacen)
  1. En el panel de Cloudflare → Workers & Pages → Create → Pages → Connect to Git y elige el repo NickSeagull/achi.
  2. Configura el build:
    • Framework preset: Astro (o None).
    • Build command: npm run build
    • Build output directory: dist
    • La versión de Node la fija .nvmrc (22). Si hiciera falta, añade la variable de entorno NODE_VERSION = 22.
  3. Cada git push a main redespliega solo (el build regenera el contenido desde el markdown fuente).

En el proyecto de Pages → Custom domains → Set up a custom domain y sigue los pasos (si el dominio ya está en Cloudflare, el registro DNS se crea solo). Después, cambia en astro.config.mjs el valor de site: por tu dominio real (https://tu-dominio.tld) para que el sitemap y las URLs canónicas sean correctas, y vuelve a hacer push.