Iroha
Iroha: A cutting-edge, enterprise-grade decentralized ledger
Install / Use
/learn @hyperledger-iroha/IrohaREADME
Hyperledger Iroha
Hyperledger Iroha is a deterministic blockchain platform for permissioned and consortium deployments. It provides account/asset management, on-chain permissions, and smart contracts through the Iroha Virtual Machine (IVM).
Workspace status and recent changes are tracked in
status.md.
Release Tracks
This repository ships two deployment tracks from the same codebase:
- Iroha 2: self-hosted permissioned/consortium networks.
- Iroha 3 (SORA Nexus): the Nexus-oriented deployment track using the same core crates.
Both tracks share the same core components, including Norito serialization, Sumeragi consensus, and the Kotodama -> IVM toolchain.
Repository Layout
crates/: core Rust crates (iroha,irohad,iroha_cli,iroha_core,ivm,norito, etc.).integration_tests/: cross-component network/integration tests.IrohaSwift/: Swift SDK package.java/iroha_android/: Android SDK package.docs/: user/operator/developer documentation.
Quickstart
Prerequisites
- Rust stable
- Optional: Docker + Docker Compose for local multi-peer runs
Build and Test (Workspace)
cargo build --workspace
cargo test --workspace
cargo clippy --workspace --all-targets -- -D warnings
cargo fmt --all
Notes:
- Full workspace build can take about 20 minutes.
- Full workspace tests can take multiple hours.
- The workspace targets
std(WASM/no-std builds are not supported).
Targeted Test Commands
cargo test -p <crate>
cargo test -p <crate> <test_name> -- --nocapture
SDK Test Commands
cd IrohaSwift
swift test
cd java/iroha_android
JAVA_HOME=$(/usr/libexec/java_home -v 21) \
ANDROID_HOME=~/Library/Android/sdk \
ANDROID_SDK_ROOT=~/Library/Android/sdk \
./gradlew test
Run a Local Network
Start the provided Docker Compose network:
docker compose -f defaults/docker-compose.yml up
Use the CLI against the default client config:
cargo run --bin iroha -- --config ./defaults/client.toml --help
For daemon-specific native deployment steps, see crates/irohad/README.md.
API and Observability
Torii exposes both Norito and JSON APIs. Common operator endpoints:
GET /statusGET /metricsGET /v1/parametersGET /v1/events/sse
See the full endpoint reference in:
Core Crates
crates/iroha: client library.crates/irohad: peer daemon binaries.crates/iroha_cli: reference CLI.crates/iroha_core: ledger/core execution engine.crates/iroha_config: typed configuration model.crates/iroha_data_model: canonical data model.crates/iroha_crypto: cryptographic primitives.crates/norito: deterministic serialization codec.crates/ivm: Iroha Virtual Machine.crates/iroha_kagami: key/genesis/config tooling.
Documentation Map
- Main docs index:
docs/README.md - Genesis:
docs/genesis.md - Consensus (Sumeragi):
docs/source/sumeragi.md - Transaction pipeline:
docs/source/pipeline.md - P2P internals:
docs/source/p2p.md - IVM syscalls:
docs/source/ivm_syscalls.md - Kotodama grammar:
docs/source/kotodama_grammar.md - Norito wire format:
norito.md - Current work tracking:
status.md,roadmap.md
Translations
Japanese overview: README.ja.md
Other overviews:
README.he.md, README.es.md, README.pt.md, README.fr.md, README.ru.md, README.ar.md, README.ur.md
Translation workflow: docs/i18n/README.md
Contributing and Help
- Contribution guide:
CONTRIBUTING.md - Community/support channels:
CONTRIBUTING.md#contact
License
Iroha is licensed under Apache-2.0. See LICENSE.
Documentation is licensed under CC-BY-4.0: http://creativecommons.org/licenses/by/4.0/
Related Skills
node-connect
339.3kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
prose
339.3kOpenProse VM skill pack. Activate on any `prose` command, .prose files, or OpenProse mentions; orchestrates multi-agent workflows.
frontend-design
83.9kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
sonoscli
339.3kControl Sonos speakers (discover/status/play/volume/group).
