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.
Cómo funciona
Sección titulada «Cómo funciona»scripts/sync-content.mjsrecorre el repo y, por cada.md, derivatitle(del primer# H1) ydescription(de la primera cita> …), retira ese H1 del cuerpo y escribe el resultado ensrc/content/docs/(carpeta generada, ignorada por git).astro.config.mjslo ejecuta en cadadev/buildy 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.mdfuente.
Comandos
Sección titulada «Comandos»npm install # una veznpm run dev # servidor local con recarga en caliente → http://localhost:4321npm run build # genera el sitio estático en dist/npm run preview # sirve dist/ para revisarlonpm run sync # regenera src/content/docs/ a mano (opcional; dev/build ya lo hacen)Desplegar en Cloudflare Pages
Sección titulada «Desplegar en Cloudflare Pages»- En el panel de Cloudflare → Workers & Pages → Create → Pages → Connect to Git y elige
el repo
NickSeagull/achi. - 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 entornoNODE_VERSION = 22.
- Cada
git pushamainredespliega solo (el build regenera el contenido desde el markdown fuente).
Dominio custom
Sección titulada «Dominio custom»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.