Installation
Prerequisites
- Rust 1.70+ (2021 edition) — Install Rust
- Node.js 18+ and npm — required to build the web dashboard frontend
- A running Urban Terror 4.3 server with RCON enabled and
g_logsync 1
Building from Source
Full Release Build (Recommended)
The web dashboard frontend is embedded into the Rust binary at compile time. Build the frontend first, then the backend:
bash
# Build the frontend
cd ui
npm install
npm run build
cd ..
# Build the backend (includes embedded frontend)
cargo build --releaseThe release binary will be at target/release/rusty-rules-referee.
Backend Only
If you don't need the web dashboard:
bash
cargo build --releaseDevelopment Build
bash
# Backend with debug symbols
cargo build
# Frontend dev server with hot reload (proxies API to localhost:8080)
cd ui
npm install
npm run devBuild Scripts
R3 includes convenience build scripts:
Linux/macOS:
bash
./build.shWindows (PowerShell):
powershell
.\build.ps1Both scripts handle the full build pipeline: install npm dependencies → build frontend → build Rust release binary.
Running Tests
bash
cargo testCross-Compilation
To build for a Linux server from a different platform, install the target and use cross-compilation:
bash
rustup target add x86_64-unknown-linux-gnu
cargo build --release --target x86_64-unknown-linux-gnuTIP
For cross-compiling from macOS/Windows to Linux, consider using cross which handles the toolchain automatically.
Next Steps
- Quick Start — Configure and run R3 for the first time