# libnovel scraper — environment overrides # Copy to .env and adjust values; do NOT commit this file with real secrets. # Browserless API token (leave empty to disable auth) BROWSERLESS_TOKEN= # Number of concurrent browser sessions in Browserless BROWSERLESS_CONCURRENT=10 # Queue depth before Browserless returns 429 BROWSERLESS_QUEUED=100 # Per-session timeout in ms BROWSERLESS_TIMEOUT=60000 # Optional webhook URL for Browserless error alerts (leave empty to disable) ERROR_ALERT_URL= # Which Browserless strategy the scraper uses: content | scrape | cdp | direct BROWSERLESS_STRATEGY=direct # Strategy for URL retrieval (chapter list). Uses browserless content strategy by default. # Set to direct to use plain HTTP, or content/scrape/cdp for browserless. BROWSERLESS_URL_STRATEGY=content # Chapter worker goroutines (0 = NumCPU inside the container) SCRAPER_WORKERS=0 # Host path to mount as the static output directory STATIC_ROOT=./static/books # ── Kokoro-FastAPI TTS ──────────────────────────────────────────────────────── # Base URL for the Kokoro-FastAPI service. When running via docker-compose the # default (http://kokoro:8880) is wired in automatically; override here only if # you are pointing at an external or GPU instance. KOKORO_URL=http://kokoro:8880 # Default voice used for chapter narration. # Single voices: af_bella, af_sky, af_heart, am_adam, … # Mixed voices: af_bella+af_sky or af_bella(2)+af_sky(1) (weighted blend) KOKORO_VOICE=af_bella # ── MinIO / S3 object storage ───────────────────────────────────────────────── MINIO_ROOT_USER=admin MINIO_ROOT_PASSWORD=changeme123 MINIO_BUCKET_CHAPTERS=libnovel-chapters MINIO_BUCKET_AUDIO=libnovel-audio # PocketBase admin credentials (used by scraper + UI server-side) POCKETBASE_ADMIN_EMAIL=admin@libnovel.local POCKETBASE_ADMIN_PASSWORD=changeme123 # ── SvelteKit UI ───────────────────────────────────────────────────────────── # Port the UI container exposes on the host UI_PORT=3000 # Public MinIO URL reachable from the browser (for audio/presigned URLs) # In production, point this at your MinIO reverse-proxy or CDN domain. PUBLIC_MINIO_PUBLIC_URL=http://localhost:9000