Development
App checks
From the repository root:
npm ci
npm run verify| Command | What it checks |
|---|---|
npm run verify | TypeScript, Oxlint, build and domain/integration tests |
VAPORA_BROWSER=/path/to/chrome npm run test:e2e | Real HTTP fixtures, saved data and downloads |
npm run dev | Builds and starts the local browser app |
Browser E2E needs installed Chrome/Chromium. Fixture tests use no Steam key. CI runs core checks on Linux, Windows and macOS, and browser E2E on Linux.
Desktop packages
npm run packageThis creates a native package in release/ without publishing it. Packages exclude local keys, saved data and development dependencies.
Test the packaged app:
VAPORA_DESKTOP=/path/to/executable \
VAPORA_DESKTOP_ASAR=/path/to/resources/app.asar \
npm run test:desktopThe desktop test checks bundled files, launches with fresh storage, completes a fixture scan, downloads exports and closes the native window.
| CI platform | Additional check |
|---|---|
| Windows | Launches the portable EXE, moves it with its data, reopens the run and downloads exports again |
| Linux | Runs desktop tests under Xvfb |
Contracts and verification
CLI, browser and desktop share the scanner, analysis and storage.
Recorded live Steam verification covers five accounts. It does not establish large-network behavior.
Documentation site
The website has its own package and lockfile in website/. It is not bundled into the desktop app.
cd website
npm ci
npm run dev
npm run verifyWebsite verification checks types, renders every page, validates links and anchors, and tests static search. See documentation maintenance.