@vttforge/vite-plugin / VttforgeOptions
Interface: VttforgeOptions ​
Properties ​
downloadUrl? ​
optionaldownloadUrl?:string
The download URL written into the built manifest: the archive of this version. {version} is replaced with the version being built, which is the one thing that changes per release.
Falls back to VTTFORGE_DOWNLOAD_URL. Left unset, whatever the source manifest holds is kept.
entry? ​
optionalentry?:string
Entry JS file relative to the project root. Default: scripts/main.mjs.
id ​
id:
string
Foundry package id. Must match the id declared in the manifest (system.json for systems, module.json for modules) and the folder Foundry serves the package from.
kind? ​
optionalkind?:"system"|"module"
Whether this is a Foundry system (default) or module. Determines the Foundry base path used for chunk resolution (/systems/<id>/ vs /modules/<id>/) and the default manifest filename.
manifest? ​
optionalmanifest?:string
Path to the manifest file relative to the project root. Default: system.json (when kind === 'system') or module.json (when kind === 'module').
manifestUrl? ​
optionalmanifestUrl?:string
The manifest URL written into the built manifest: where Foundry looks to learn whether a newer release exists.
Falls back to VTTFORGE_MANIFEST_URL, so a release workflow sets it without editing the Vite config. Left unset, whatever the source manifest holds is kept.
staticAssets? ​
optionalstaticAssets?:string[]
Paths copied verbatim to dist/ at the start of every build. Each entry may be a file or a directory; directories are copied recursively. Default: ['template.json', 'lang', 'templates', 'packs'], plus the directory of every packs[].path the manifest declares. The manifest is always copied separately so the version sync hook can rewrite it.