Documentation channel: current development main at compiler checkpoint 1d7e15e. The latest tagged release is v0.0.3; pages identify APIs that are not yet released.
Install & build
Install the latest stable Strut release without sudo:
curl -fsSL https://strut-labs.github.io/install.sh | sh
The installer preserves Strut's relocatable bin/share layout under ~/.local/opt/strut, links the command at ~/.local/bin/strut, verifies the compiler, and prints PATH guidance when needed.
strut --version
Update
curl -fsSL https://strut-labs.github.io/update.sh | sh
Update exits cleanly when already current and atomically replaces only the managed Strut installation.
Uninstall
curl -fsSL https://strut-labs.github.io/uninstall.sh | sh
Uninstall requires the installation manifest and removes only the exact Strut tree and matching command link. It never recursively removes ~/.local.
Download only
curl -fsSL https://strut-labs.github.io/download.sh -o download-strut.sh
sh download-strut.sh
sh download-strut.sh 0.0.3 ./downloads
This selects the correct archive without installing it. Archives are also available from GitHub Releases.
Custom locations
curl -fsSL https://strut-labs.github.io/install.sh | \
STRUT_INSTALL_DIR="$HOME/tools/strut" STRUT_BIN_DIR="$HOME/bin" sh
Use the same variables for update and uninstall. Paths containing spaces are supported.
The scripts live at site-root paths and can move unchanged to strut.cx once that custom domain's DNS and GitHub Pages configuration are active.
Supported platforms
- Linux x86-64 (
x86_64/amd64) - Linux ARM64 (
aarch64/arm64) - macOS Apple Silicon (
arm64) - Windows x64 through the manual ZIP download; scripted PowerShell installation is planned.
Unsupported systems fail explicitly. Scripts verify the published SHA256SUMS; version 0.0.1 predates checksums and remains available over verified HTTPS.
Toolchain requirement
The compiler invokes a native C++20 toolchain to produce executables, so install GCC or Clang on Linux, Apple Clang on macOS, or Visual Studio 2022/MSVC on Windows.
Build from source
Configure
cmake -S . -B build -G Ninja
Build
cmake --build build
Run compiler tests
ctest --test-dir build --output-on-failure
Install a source build
cmake --install build --config Release --prefix ./strut-0.0.3
Compiler dependencies
JSONIC is embedded for Strut's built-in JSON implementation. libcurl is approved for HTTP/client TLS and OpenSSL is approved for server-side TLS work. Additional third-party components are not added implicitly.
