# Public site base URL used for canonical URLs (no trailing slash) PUBLIC_SITE_URL=https://example.com # Umami (optional). If not set, analytics is disabled. PUBLIC_UMAMI_SCRIPT_URL=https://analytics.example.com/script.js PUBLIC_UMAMI_WEBSITE_ID=00000000-0000-0000-0000-000000000000 # Service worker toggle (public, build-time). Use to enable in prod/staging. # - In `npm run dev`, service workers are not registered regardless. # - In `npm run build`/`preview`, SW is registered only if this is "true". PUBLIC_ENABLE_SW=true # Nav/title hover-line effect toggle (public, build-time). # Set to "false" to disable the decorative hover-line treatment. PUBLIC_ENABLE_NAV_HOVER_LINE=true # Content ingestion configuration (used by scripts) YOUTUBE_CHANNEL_ID=UCxxxxxxxxxxxxxxxxxxxxxx YOUTUBE_API_KEY= PODCAST_RSS_URL=https://example.com/podcast.rss # Instagram embed-first list (JSON file containing {"postUrls":[...]}) INSTAGRAM_POST_URLS_FILE=content/instagram-posts.json # WordPress (optional; used by scripts/fetch-content.ts to build the /blog section) # Example: https://your-site.com (no trailing slash) WORDPRESS_BASE_URL= # Optional credentials (prefer an Application Password). Leave blank if your WP endpoints are public. WORDPRESS_USERNAME= WORDPRESS_APP_PASSWORD= # Cache layer (optional; used by ingestion scripts) # If unset, caching is disabled. # # Using docker-compose redis: # CACHE_REDIS_URL=redis://localhost:6380/0 CACHE_REDIS_URL= # Alternative config if you prefer host/port/db: CACHE_REDIS_HOST=localhost CACHE_REDIS_PORT=6380 CACHE_REDIS_DB=0 # Default cache TTL (seconds). 3600 = 1 hour. CACHE_DEFAULT_TTL_SECONDS=3600