- /: project root (workspace config, build scripts, docs)
- src/main/: Electron main process source (
main.ts) and packaging config - src/renderer/: Electron renderer source (
renderer.tsx) and UI logic - src/preload/: Electron preload scripts (
index.ts) - src/shared/: code shared across processes
- src/extensions/: embedded extensions (statically loaded)
- extensions/: bundled extensions (built separately, shipped with app)
- mocks/: mocks for unit tests
- tests/: root integration/cross-cutting tests
- .vscode/: VS Code launch/tasks/settings config
- dist/: packaged installer/output artifacts
- src/main/out/: development runtime output (
pnpm run build) - src/main/dist/: production staging output (
pnpm run dist+ assets/subprojects) - typings.custom/: custom TypeScript declaration files
- src/main/: Electron main process source (
package.json: root workspace scripts and shared tooling dependenciespnpm-workspace.yaml: workspace package list and native build settingspnpm-lock.yaml: workspace lockfiletsconfig.json: root TypeScript project references.npmrc: native module build defaults (electron headers/msvs settings)BuildSubprojects.json: bundled extension build descriptorsInstallAssets.json: static asset copy/build manifestsrc/main/electron-builder.config.json: electron-builder packaging configversions.json: minimum Vortex version accepted for feedback
bootstrap.ps1: Windows bootstrap for local development setupupdateLicenses.js: generate third-party modules/licenses list for About page
preinstall.js: builds native prerequisites used by the workspaceBuildSubprojects.mjs: builds/copies bundled extensions into target output dirInstallAssets.mjs: copies static assets into output directoriespostinstall.js: verifies native module build/install statesrc/main/prepare-dist-package.mjs: generates staging package metadata for dist packaging
pnpm run build:fomod && pnpm install: setup dependenciespnpm run build: development build (src/main/out)pnpm run assets:out: copy/build runtime assets for developmentpnpm run subprojects:out: build bundled extensions for developmentpnpm run dist: production webpack bundles (src/main/dist)pnpm run package/pnpm run package:nosign: produce installer artifacts