Esta guía explica cómo ejecutar y validar Fiestas Valladolid 2026 en local. La documentación general del producto está en README.md.
cloudflared, solo si se quiere compartir el servidor local mediante una URL temporal.Desde la raíz del repositorio:
npm ci
npm ci instala exactamente las versiones fijadas en package-lock.json. Si estás desarrollando una actualización deliberada de dependencias, usa npm install y revisa después los cambios del lockfile.
npm run dev
El comando:
dist/;src/;La aplicación queda disponible en:
http://127.0.0.1:8002/
Para usar otro puerto:
PORT=8010 npm run dev
El servidor de desarrollo envía Cache-Control: no-store, por lo que los cambios se pueden comprobar sin limpiar la caché del navegador. Detén el proceso con Ctrl+C.
Para desactivar explícitamente la analítica durante el desarrollo:
FIESTAS_ANALYTICS_ENABLED=false npm run dev
Para generar únicamente la salida estática:
npm run build
El resultado se escribe en dist/. El build elimina primero esa carpeta, procesa las plantillas y los estilos, copia los recursos, valida los datos y genera las rutas de agenda, mapa, fichas y planes.
Para eliminar la salida generada:
npm run clean
No edites dist/ directamente. Los cambios deben hacerse en src/, scripts/ o los archivos de configuración del proyecto.
Ejecuta las pruebas automatizadas con:
npm test
También puedes comprobar que el service worker generado tiene sintaxis JavaScript válida:
node --check dist/sw.js
Antes de publicar, revisa al menos la agenda, filtros, mapa, una ficha con coordenadas, una ficha sin coordenadas, favoritos, planes, importación, tema claro/oscuro y la instalación PWA.
La fuente principal es:
src/data/fiestas-2026/events.json
El programa de referencia está en:
src/data/fiestas-2026/programa2026.md
Cada actividad necesita un ID entero positivo, único y estable. El build deriva el slug del título y crea rutas del tipo:
/e/<id>/<slug>/
Los planes públicos se mantienen en:
src/data/community-plans.json
src/data/community-plans/
La auditoría local no hace peticiones externas ni modifica los datos:
npm run locations:audit
Para consultar Nominatim sin aplicar cambios:
node scripts/enrich-event-locations.mjs --dry-run --provider=nominatim
Para aplicar resultados con confianza suficiente:
node scripts/enrich-event-locations.mjs --apply --provider=nominatim
Para revisar también actividades que ya tienen coordenadas:
node scripts/enrich-event-locations.mjs --dry-run --provider=nominatim --repair
Los informes y la caché se guardan en .cache/fiestas/, una carpeta ignorada por Git.
El script compara actividades locales con las fichas públicas de Eventos de Aldea Pucela y puede escribir las imágenes coincidentes en events.json:
npm run images:link
Es una operación que modifica el archivo de datos. Revisa el diff antes de conservar sus resultados.
Con npm run dev activo:
cloudflared tunnel --url http://127.0.0.1:8002
Cloudflare mostrará una URL temporal de trycloudflare.com. No es un despliegue permanente.
npm ci
npm test
npm run build
npm run dev
Después de modificar código o datos:
npm test;npm run build;git diff y git status;dist/, .cache/ ni archivos temporales en el commit.El build admite estas variables:
| Variable | Uso |
|---|---|
FIESTAS_ANALYTICS_ENABLED |
true activa la analítica y false la desactiva. |
FIESTAS_MATOMO_URL |
Cambia la URL base de Matomo. |
FIESTAS_MATOMO_SITE_ID |
Cambia el site ID de Matomo. |
La taxonomía y los límites de privacidad están en docs/matomo.md.