Rust SDK for developing applications on Ledger hardware wallets. This workspace provides safe, idiomatic Rust abstractions over the Ledger C SDK for building embedded applications on Nano X, Nano S Plus, Stax, Flex, and Apex P devices.
| Nano X | Nano S Plus | Stax | Flex | Apex P |
|---|---|---|---|---|
| ✅ | ✅ | ✅ | ✅ | ✅ |
| Crate | Description | Documentation | Latest Release | Changelog |
|---|---|---|---|---|
| ledger_device_sdk | High-level Rust SDK with safe abstractions | Link | Link | |
| ledger_secure_sdk_sys | Low-level FFI bindings to C SDK | Link | ||
| include_gif | Proc macro for embedding images (GIF/PNG → NBGL/BAGL) | |||
| testmacro | Test harness for #![no_std] environments |
Docker images are available and shall be used to build and test Rust applications for Ledger devices.
full | dev-tools | |
|---|---|---|
| Rust nightly-2025-12-05 toolchain | :white_check_mark: | :white_check_mark: |
| cargo-ledger | :white_check_mark: | :white_check_mark: |
| Rust Ledger devices custom targets | :white_check_mark: | :white_check_mark: |
| ARM & LLVM toolchains | :white_check_mark: | :white_check_mark: |
| Speculos | :x: | :white_check_mark: |
| Ragger | :x: | :white_check_mark: |
Please check here for more details.
# Pull the Docker image
docker pull ghcr.io/ledgerhq/ledger-app-builder/ledger-app-builder:latest
# Build your app (from your project directory) using cargo-ledger
docker run --rm -v "$(pwd):/app" \
ghcr.io/ledgerhq/ledger-app-builder/ledger-app-builder:latest \
cargo ledger build stax
# Run examples with Speculos (dev-tools image)
docker run --rm -v "$(pwd):/app" \
ghcr.io/ledgerhq/ledger-app-builder/ledger-app-dev-tools:latest \
cargo run --example nbgl_home_and_settings --target stax --release
For detailed setup instructions, see the ledger_device_sdk README.
To start building your own app:
cargo install --git https://github.com/LedgerHQ/cargo-ledger)arm-none-eabi-gcc (ARM toolchain)Contributions are welcome! Please ensure your PR:
cargo ledger build <device> (or cargo build --release --target <device>)cargo clippy without warningscargo fmtSee individual crate READMEs for specific contribution guidelines.
(top 30 of 35)
Rust
97.4%
C
1.5%
Rust SDK for developing applications on Ledger hardware wallets. This workspace provides safe, idiomatic Rust abstractions over the Ledger C SDK for building embedded applications on Nano X, Nano S Plus, Stax, Flex, and Apex P devices.
| Nano X | Nano S Plus | Stax | Flex | Apex P |
|---|---|---|---|---|
| ✅ | ✅ | ✅ | ✅ | ✅ |
| Crate | Description | Documentation | Latest Release | Changelog |
|---|---|---|---|---|
| ledger_device_sdk | High-level Rust SDK with safe abstractions | Link | Link | |
| ledger_secure_sdk_sys | Low-level FFI bindings to C SDK | Link | ||
| include_gif | Proc macro for embedding images (GIF/PNG → NBGL/BAGL) | |||
| testmacro | Test harness for #![no_std] environments |
Docker images are available and shall be used to build and test Rust applications for Ledger devices.
full | dev-tools | |
|---|---|---|
| Rust nightly-2025-12-05 toolchain | :white_check_mark: | :white_check_mark: |
| cargo-ledger | :white_check_mark: | :white_check_mark: |
| Rust Ledger devices custom targets | :white_check_mark: | :white_check_mark: |
| ARM & LLVM toolchains | :white_check_mark: | :white_check_mark: |
| Speculos | :x: | :white_check_mark: |
| Ragger | :x: | :white_check_mark: |
Please check here for more details.
# Pull the Docker image
docker pull ghcr.io/ledgerhq/ledger-app-builder/ledger-app-builder:latest
# Build your app (from your project directory) using cargo-ledger
docker run --rm -v "$(pwd):/app" \
ghcr.io/ledgerhq/ledger-app-builder/ledger-app-builder:latest \
cargo ledger build stax
# Run examples with Speculos (dev-tools image)
docker run --rm -v "$(pwd):/app" \
ghcr.io/ledgerhq/ledger-app-builder/ledger-app-dev-tools:latest \
cargo run --example nbgl_home_and_settings --target stax --release
For detailed setup instructions, see the ledger_device_sdk README.
To start building your own app:
cargo install --git https://github.com/LedgerHQ/cargo-ledger)arm-none-eabi-gcc (ARM toolchain)Contributions are welcome! Please ensure your PR:
cargo ledger build <device> (or cargo build --release --target <device>)cargo clippy without warningscargo fmtSee individual crate READMEs for specific contribution guidelines.
(top 30 of 35)
Rust
97.4%
C
1.5%