pro-visu docs
Configuration

Settings reference

Every field in the settings block — output, concurrency, browser, defaults, quality, and cache.

The settings block controls repo-level CLI behaviour. Every field has a default, so settings can be omitted entirely.

FieldTypeDefaultMeaning
outDirstring"pro-visu"Output directory, relative to the repo root. Holds generated assets + manifest.json.
concurrencynumber2How many assets to generate in parallel (shared browser, separate contexts). Lower to 1 to cap memory on heavy runs.
maxMemoryMBnumberRaise the Node heap to this many MB. Heavy jobs (large frame-stepped walls) can exceed Node's ~4 GB default and crash with "JavaScript heap out of memory"; when set above the current limit the CLI re-execs itself with --max-old-space-size. This is the Node process heap, not the browser's.
logLevel"silent" | "error" | "warn" | "info" | "debug""info"Log verbosity. --verbose forces debug.
quality"draft" | "final""final"draft lowers fps/scale and speeds the encoder for fast iteration (same as --draft).
cachebooleanfalseSkip assets whose inputs + options + tool fingerprint are unchanged. Opt-in; can be stale.
browserobjectPlaywright launch controls (see below).
defaultsobject{}Per-generator option defaults, keyed by generator id, merged beneath each asset's options.
serverobjectOptional managed server.

browser

Controls how Playwright launches the browser used for capture.

FieldTypeDefaultMeaning
headlessbooleantrueRun headless. Set false to watch captures in a visible window.
channelstringUse an installed browser channel, e.g. "chrome" or "msedge", instead of the managed Chromium.
executablePathstringAbsolute path to a browser executable (overrides channel and the managed Chromium).
argsstring[][]Extra launch args, e.g. ["--no-sandbox"] on CI.
timeoutnumber30000Launch timeout in ms.
settings: {
  browser: {
    headless: true,
    channel: "chrome",          // use your installed Chrome
    args: ["--no-sandbox"],     // common on CI
  },
}

When channel or executablePath is set, the managed Chromium is not required or installed.

defaults

Repo-wide defaults per generator. Keys are generator ids; the value is an options object merged underneath each asset's own options (the asset wins).

settings: {
  defaults: {
    "scroll-reel": { width: 1440, height: 900, fps: 30 },
    "screenshots": { format: "jpeg", quality: 90 },
  },
}

On this page