Last updated: 2026-03-19
The visual Pack Editor is the fastest way to build or tweak a pack without touching JSON:
processNames (e.g. myapp.exe).Every pack must include appName, processNames, and a non-empty shortcuts array. Optional metadata (id, version, category, author, …) helps you organise larger libraries.
Minimal example:
{
"appName": "Contoso Writer",
"processNames": ["contoso.exe"],
"shortcuts": [
{ "command": "Save", "keys": "Ctrl+S" },
{ "command": "Export PDF", "keys": "Ctrl+Shift+E", "menuPath": "File > Export" }
]
}
The canonical JSON Schema lives in the FluentOverlay repository and is mirrored here for convenience:
Validate locally with tooling such as check-jsonschema against that file in CI or before you share a pack.
Bundled packs store translations under Packs/i18n/{locale}/.... For custom packs, follow the same folder pattern so WinUI can resolve strings per user locale.
check-jsonschema (or equivalent) against /schemas/pack.schema.json to catch structural errors early.