Spanda ships prebuilt installable packages for Linux, macOS, and Windows. You can also build from source.
Download the latest release from GitHub Releases.
Each release includes:
| Artifact | Platform |
|---|---|
spanda-cli-installer.sh |
Linux and macOS (auto-detects arch) |
spanda-cli-installer.ps1 |
Windows (PowerShell) |
spanda-cli-x86_64-pc-windows-msvc.msi |
Windows installer |
spanda-cli-*.tar.xz |
Linux/macOS archives (per architecture) |
spanda-cli-*.zip |
Windows archive |
spanda-cli.rb |
Homebrew formula (manual or tap install) |
Release tags must match the workspace version in Cargo.toml (for example v0.1.0).
curl --proto '=https' --tlsv1.2 -LsSf \
https://github.com/Davalgi/Spanda/releases/download/v0.1.0/spanda-cli-installer.sh | sh
The installer places spanda in ~/.cargo/bin by default. Ensure that directory is on your PATH.
Download spanda-cli.rb from the release and install locally:
brew install ./spanda-cli.rb
Or extract a platform archive and copy spanda to a directory on your PATH.
Download spanda-cli-x86_64-pc-windows-msvc.msi from the release and run the installer.
irm https://github.com/Davalgi/Spanda/releases/download/v0.1.0/spanda-cli-installer.ps1 | iex
tar.xz on Linux/macOS, .zip on Windows).spanda (or spanda.exe) to a directory on your PATH.Supported targets:
x86_64-unknown-linux-gnuaarch64-unknown-linux-gnux86_64-apple-darwinaarch64-apple-darwinx86_64-pc-windows-msvcVerify:
spanda --version
spanda check examples/hello_world.sd
spanda control-center --help # confirms enterprise-ops CLI is present
If control-center is missing or api-key generate fails with Unknown argument: generate, your
PATH binary is likely stale — see troubleshooting.md.
From a clone:
./scripts/install.sh
This runs cargo install --path crates/spanda-cli --locked and installs the spanda binary
(crate name spanda) to ~/.cargo/bin.
For contributors or unreleased builds:
git clone https://github.com/Davalgi/Spanda.git
cd Spanda
npm install
npm run build:rust # → target/release/spanda
npm test
Add target/release to your PATH, or run via npm run spanda:native -- <command>.
Releases are built with cargo-dist. Push a semver tag
matching Cargo.toml (for example v0.1.0) to trigger .github/workflows/release.yml.
Local packaging:
./scripts/package-release.sh v0.1.0 # current host only
./scripts/package-release.sh v0.1.0 --all # all targets (needs cross tools below)
--all cross-compiles Linux and Windows artifacts from your machine and requires:
cargo install --locked cargo-zigbuild cargo-xwin
brew install zig # or: python3 -m pip install ziglang
rustup target add aarch64-apple-darwin aarch64-unknown-linux-gnu \
x86_64-apple-darwin x86_64-unknown-linux-gnu x86_64-pc-windows-msvc
Or install automatically:
./scripts/package-release.sh v0.1.0 --all --install-cross
For official releases, prefer pushing a semver tag and letting GitHub Actions build every platform natively.
Regenerate dist CI after config changes:
dist generate
Configuration lives in dist-workspace.toml.