Repository navigation
vapora 2.0.0
vapora 2.0.0
Vapora 2 replaces the Python app with a shared TypeScript core, a classic green Steam interface, an Electron desktop window and a CLI.
getting started
Install Node.js 24 or newer, download the source archive, then run:
npm ci
npm run build
npm start -- serveOpen the local address printed in the terminal and enter a Steam Web API key using the toolbar key button. Run npm run desktop for the native Electron window. This release uses source downloads; the 1.0.2 Python executable belongs to the previous app.
features
- Browser and desktop interfaces with Steam avatars, saved runs, profile inspection and network exploration.
- Depth 1-5, node caps, an explicit private-profile skip policy, request pacing, retries and resumable checkpoints.
- Community and centrality analysis, friend rankings, location signals and Gephi exports.
- Offline reranking and named settings profiles.
- Local SteamHistory JSON/NDJSON import, matching-run attachment and history downloads.
fixes
- Fresh profile lookup replaces incomplete saved-run identity after a denied-key scan.
- Browser Exports explains when a saved run must be opened and shows downloads for the selected run.
- Window controls and output-folder actions operate on the native desktop app.
upgrading from 1.x
- Node.js 24 replaces the Python runtime and
start.pylaunch. - Start fresh runs and settings profiles. Python checkpoints and earlier local formats are not migrated; existing files remain untouched. Use a separate data directory for Vapora 2.
- The ranked CSV is
probable-friends.csv. Run folders areoutputs/<run-id>/. - Private skipping, shared groups and shared games are off by default. Shared-group access may be unavailable for your Steam key.
verification and limits
Core CI passed on Linux, Windows and macOS, and browser E2E passed on Linux. Native Electron workflows passed on Linux and macOS. Two five-account live Steam scans passed, including one started from the browser.
Native Windows startup and packaged installers remain unverified. Windows needs the Visual C++ runtime for its architecture. Large live networks remain untested, and ranking/location scores are heuristics rather than proof of real-life relationships or residence.
Export files are replaced individually. If a disk or permission failure interrupts reranking, fix the storage issue and run npm start -- analyze RUN_ID --root DIRECTORY to rebuild exports from the saved checkpoint.