Skip to main content
Helix compiles to a single binary. You can cross-compile for Linux, macOS, and Windows on AMD64 and ARM64.

Development Build

cd helix
cargo build
cargo run -- script.hx

Release Build

cargo build --release
./target/release/helix script.hx

Selective Module Compilation

Only compile the modules you need — dramatically reduces binary size:
# All modules (default) — ~5MB
cargo build --release

# Only math + json + os — ~900KB
cargo build --release --no-default-features --features mod_math,mod_json,mod_os

# Discord bot only
cargo build --release --no-default-features --features mod_discord,mod_env

Feature Flags

FlagModuleDependencies
mod_mathmathrand
mod_jsonjson(core dep)
mod_osos(std only)
mod_envenvdotenvy
mod_datedatechrono
mod_httphttpreqwest
mod_databasedatabase (HelixDB)redb
mod_database_sqlsqlsqlx
mod_discorddiscordserenity, poise
mod_openaiopenaireqwest
mod_hashhash(crypto)

Cross-Compilation

Use the included build.sh script. Requires:
chmod +x build.sh

# Build all targets with all modules
./build.sh

# Build all targets with specific modules only
./build.sh mod_math mod_json mod_os

Targets

TargetOSArch
x86_64-unknown-linux-gnuLinuxAMD64
aarch64-unknown-linux-gnuLinuxARM64
x86_64-apple-darwinmacOSAMD64
aarch64-apple-darwinmacOSARM64 (Apple Silicon)
x86_64-pc-windows-gnuWindowsAMD64
aarch64-pc-windows-gnuWindowsARM64
Output binaries are placed in build/.