Skip to content

Environment Variables

This is a static site, so most variables are optional. See .env.example for the full list.

Copy .env.example to .env for build-time variables:

# Public production URL (canonical/OG/sitemap)
SITE_URL=http://localhost:4321
# Optional analytics
PUBLIC_GA_MEASUREMENT_ID=
PUBLIC_GTM_ID=

Pages Functions secrets (R2 cleanup; optional legacy Instagram API) go in .dev.vars when using wrangler pages dev:

CLEANUP_SECRET=dev-cleanup-secret-change-me

Set PUBLIC_INSTAGRAM_FEED_URL to the JSON feed endpoint (default http://localhost:8787/). Also configure siteConfig.instagram.profileUrl / title / limit.

Set PUBLIC_SCHEDULE_URL to the /programacion JSON endpoint (default http://localhost:8788/programacion). Override per environment in Cloudflare Pages. src/content/schedule/*.json remains the offline fallback.

Optional / unused by the strip: INSTAGRAM_RAPIDAPI_KEY, INSTAGRAM_USERNAME, INSTAGRAM_ACCESS_TOKEN, INSTAGRAM_USER_ID, INSTAGRAM_LIMIT, plus KV binding INSTAGRAM_FEED in wrangler.jsonc for functions/api/instagram.ts.

Configure variables via Cloudflare Dashboard > Pages > your-project > Settings > Environment variables. Add CLEANUP_SECRET as an encrypted secret if you use the R2 cleanup worker.

The validate:secrets script scans the repo for accidentally committed secrets:

Terminal window
pnpm run validate:secrets

It runs during CI and fails the build if a likely secret is detected.