Configuration
lakreet.config.json sets defaults for all commands. CLI flags override config.
File location
--config <path>explicit pathlakreet.config.jsonin current working directory- None (use defaults)
All keys
| Key | Type | Default | Description |
|---|---|---|---|
template | string | null | Template path (required for render/check/preview/init) |
data | string | null | Data file path (required for render/check/preview) |
out | string | "out" | Output folder |
name | string | "{index}-{first}" | Output naming pattern |
columns | object | {} | CSV header → control name mapping |
render | object | {} | Render options (format, quality, resolution, etc.) |
jobs | number | 1 | Reserved (not implemented) |
mediaDir | string | null | Base folder for relative media paths |
delimiter | string | null | Force CSV delimiter (,, ;, \t) |
keepValues | boolean | false | Keep per-row .values.json files |
emptyAsDefault | boolean | false | Empty text cells → template default |
render object
json
{
"render": {
"format": "h264",
"quality": "best",
"resolution": "full",
"fps": 30,
"bitrate": 5000,
"audio": "auto"
}
}Same keys as CLI flags (without --).
Example
json
{
"template": "templates/lower-third.ectemplate",
"data": "data/episodes.csv",
"out": "dist/videos",
"name": "{index:3}-{slug:Episode Title}",
"columns": {
"Guest Name": "Source Text",
"Guest Title": "Title",
"Logo Path": "Logo"
},
"render": {
"format": "webm",
"quality": "best",
"resolution": "half"
},
"mediaDir": "assets",
"delimiter": ";",
"keepValues": true,
"emptyAsDefault": true
}Precedence
CLI > Config file > Defaults
bash
# Config: out = "dist"
# CLI: --out ./custom
# Result: ./customValidation
Unknown keys = error:
Unknown config key "foo" in lakreet.config.json.Next steps
- Map columns —
columnsmapping guide - Choose output — render options
- Environment — env vars
- CLI reference — all flags