🏗️ Building
Prerequisites
- Rust toolchain
rustup.rs - CMake and Ninja
SDL3 is built from source via CMake w/ Ninja - Node.js
Required to build the UI (UI/) and the CEF payloads (CEF_Payloads/) that interact with Steam's CEF remote debugging interface
SDL3
SDL3 is compiled from source via sdl3-sys. build.rs sets CMAKE_GENERATOR=Ninja.
🪟 Windows
- MSVC toolchain
- Ensure
cmakeandninjaare in PATH
🐧 Linux
🏹 Arch Linux
🟠 Ubuntu
sudo apt-get install ninja-build cmake pkg-config libgtk-3-dev \
libsoup-3.0-dev libjavascriptcoregtk-4.1-dev libwebkit2gtk-4.1-dev \
libxdo-dev libxss-dev
Build
Build the CEF payloads and the Web UI first, then build SISR.
1. CEF Payloads (Steam overlay injection scripts):
2. Web UI (SvelteKit frontend served inside the app window):
3. SISR:
VIIPER
VIIPER is downloaded at build time based on package.metadata.viiper in Cargo.toml.
Binary is placed in target/<triple>/<profile>/viiper(.exe).
Internet required on first build; subsequent builds use cached copy.