Skip to main content
Version: Next

Prerequisites

EXEPERT builds a WebAssembly module from Rust and bundles a TypeScript/Three.js front end with Vite. You need both a JavaScript toolchain and a Rust toolchain installed.

JavaScript toolchain

ToolVersionNotes
Node.js>= 20Enforced by the engines field in package.json.
pnpm9.15.4The repo pins packageManager: pnpm@9.15.4.

Enable pnpm through Corepack (bundled with Node):

corepack enable
corepack prepare pnpm@9.15.4 --activate

Rust toolchain

The dev and build scripts compile the simulation crate before starting Vite, so the Rust toolchain must be present even if you only intend to run the front end.

ToolNotes
Rust (stable)Install via rustup.
wasm32-unknown-unknown targetCompilation target for the WASM module.
wasm-packDrives the WASM build.
rustup target add wasm32-unknown-unknown
cargo install wasm-pack
wasm-opt is disabled

rust/brain_sim/Cargo.toml sets wasm-opt = false, so you do not need Binaryen installed. The unoptimized module is small (~26 KB gzipped).

Verifying the toolchain

node --version # v20 or newer
pnpm --version # 9.15.4
rustc --version # stable
wasm-pack --version

Once these are in place, continue to Installation.