Skip to content

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

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 --release

The release binary will be at target/release/rusty-rules-referee.

Backend Only

If you don't need the web dashboard:

bash
cargo build --release

Development 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 dev

Build Scripts

R3 includes convenience build scripts:

Linux/macOS:

bash
./build.sh

Windows (PowerShell):

powershell
.\build.ps1

Both scripts handle the full build pipeline: install npm dependencies → build frontend → build Rust release binary.

Running Tests

bash
cargo test

Cross-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-gnu

TIP

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

Released under the GPL-2.0 License.