Skip to content

Install Leani

Build the release candidate

Use a source checkout while the first release packages are being prepared. You need Git, Rust installed through rustup, and your platform’s C/C++ build tools. The repository’s rust-toolchain.toml selects Rust 1.97.0 automatically. The first build downloads dependencies and can take several minutes.

Build the alpha from source
git clone https://github.com/smart-byte/leani.git
cd leani
cargo build --locked -p leani
export LEANI_SOURCE="$PWD"
export PATH="$LEANI_SOURCE/target/debug:$PATH"
leani --version
Build the pinned workspace and use its binary in this terminal.Verified source

Expect leani 0.1.0-rc.1. If you already have the checkout, start at cargo build --locked -p leani in its root directory.

LEANI_SOURCE points to the checkout; later tutorials use it to find example configs. The PATH setting makes leani available in this terminal. In each additional terminal, return to the checkout and run:

Terminal window
export LEANI_SOURCE="$PWD"
export PATH="$LEANI_SOURCE/target/debug:$PATH"

Continue with your first Ethereum block. For a check without network access, run the offline fixture.

Prepare the TypeScript SDK

The examples use Bun 1.2 or later. From the checkout:

Terminal window
bun install --cwd packages/sdk --frozen-lockfile
bun run --cwd packages/sdk build

Repository examples resolve @leani/sdk to the local source. To use the built package in your own application, run this from that application’s directory:

Terminal window
bun add "$LEANI_SOURCE/packages/sdk"

Then follow the query and subscription example. For Rust applications, see build a custom node.

Published releases

Once published, install with brew install smart-byte/tap/leani, or choose a matching archive from the GitHub releases. Verify the archive’s published checksum before running it. Containers use ghcr.io/smart-byte/leani:<version>; pin the release’s digest for deployment. For this preview, select the v0.1.0-rc.1 binary release and install the matching SDK with bun add @leani/sdk@0.1.0-rc.1. Prerelease SDKs use npm’s next tag. Keep binary, SDK, and configuration versions aligned with the release you selected.