# 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
