All tools for building on
RGB Protocol on Bitcoin.
RGB SDK, libraries in multiple languages, Lightning Node integration, sandbox environment, and core protocol libraries: everything you need to build production-grade applications on RGB Protocol on Bitcoin.
This page maps the full RGB developer stack — from the recommended SDK down to protocol-level libraries — organized by how deep into the protocol you need to go to build your integration.
Choose the right layer
for your use case.
The RGB tooling is organized in layers — start at the top for application development, go deeper for protocol-level work.
Application layer — start here
RGB Lib + language bindings
High-level SDK for wallets, exchanges, and apps. Available in Rust, Python, Swift, Kotlin, Node.js.
Lightning layer
RGB Lib + language bindings
Run an RGB-enabled Lightning node. Manage typed asset channels, route RGB payments over LN.
Protocol layer
Core libraries — rgb-consensus, rgb-core, rgb-std
Low-level protocol implementation. For protocol contributors and advanced integrations.
Foundation
Bitcoin — commitment layer
Bitcoin stores only cryptographic commitments. All RGB logic lives above this layer.
RGB Lib — the recommended
starting point.
High-level library that abstracts RGB protocol complexity into clean, practical APIs for wallet and application developers.
RGB Lib
A high-level RGB library that handles all the complexity of client-side validation, UTXO management, schema handling, and state transitions — exposing clean APIs for issuing assets, generating invoices, and transferring. The fastest path from zero to a working RGB integration.
RGB Lib supports both Electrum and Esplora backends for Bitcoin node connection, and works on mainnet, testnet, and regtest. It handles schema management, consignment creation, PSBT integration, and blind invoice generation.
# Add to Cargo.toml
[dependencies]
rgb-lib = “0.3”
# Available language bindings:
Move state between wallets,
trustlessly.
Infrastructure · Rust
RGB Proxy Server
Relay server for RGB consignment transport between wallets. Used in Lightning payment flows to pass state transitions between parties. Trustless by design. Operators cannot tamper with client-side validation
RGB-Tools/rgb-proxy-server ↗
Open source
RGB Lightning Node — asset channels
over Lightning.
Run a Lightning node with native RGB asset channel support. Built on top of RGB Lib and LDK (Lightning Development Kit).
Lightning · Rust
RGB Lightning Node
Full Lightning node implementation with RGB asset channel support. Opens asset channels, manages HTLCs for RGB payments, and routes assets over the Lightning Network. Built on LDK, reference node.
Lightning · Rust · LDK
Rust Lightning fork
RGB-compatible fork of the Rust Lightning (LDK) library. The foundation for RGB Lightning Node — shows how RGB state transitions integrate at the LDK level for channel management.
RGB-Tools/rust-lightning↗
LDK fork
Lightning · Bot
RGB Lightning Network Bot
A Telegram bot to test RGB on Lightning Network — chat-based access to RGB asset channels without installing or running a Lightning node locally. A fast way to try transfers hands-on.
t.me/rgb_lightning_bot ↗
Telegram bot
Test locally before
going to mainnet.
Isolated Docker environments for developing and testing RGB applications without spending real bitcoin.
Testing · Docker · Shell
RGB Sandbox
Docker-based local environment with Bitcoin regtest, Electrum server, and full RGB infrastructure pre-configured. Run the demo scripts to see a complete issue → transfer → receive cycle in minutes.
Testing · Python
RGB Faucet
A testnet faucet for RGB assets — allows developers to receive test RGB tokens on testnet without having to issue them manually. Useful for testing wallet integrations and transfer flows.
RGB-Tools/faucet-rgb↗
Open source
Testing · Rust
RGB Tests
Official integration test suite for RGB Bitcoin Protocol. Covers consensus validation, state transitions, schema compliance, and Lightning channel behavior. Reference for expected protocol behavior.
rgb-protocol/rgb-tests ↗
Official test suite
Reference wallet code
to learn from.
Open-source wallet implementations that show how RGB Lib integrates into production mobile and desktop applications.
Wallet · Kotlin · Android
Iris Wallet Android
Open-source Android wallet for RGB assets — the reference implementation for mobile RGB integration using rgb-lib-kotlin. Developed by Bitfinex. Production-grade code, used in the mainnet Iris Wallet.
Wallet · Python · Desktop
Iris Wallet Desktop
Open-source desktop wallet for RGB assets — the reference implementation for desktop RGB integration. RGB functionality is provided by rgb-lightning-node, wrapped in a full-featured Python GUI with UTXO management.
Protocol-level libraries
for advanced integrations.
Low-level Rust libraries implementing the RGB Bitcoin Protocol specification. For protocol contributors and developers building at the consensus level.
Core · Rust
rgb-consensus
Consensus and validation logic for RGB Bitcoin Protocol. The authoritative implementation of protocol rules — schema validation, state transition verification, and commitment schemes.
Core · Rust
rgb-schemas
Official implementations of all standard RGB schemas — NIA, UDA, CFA, IFA, PFA. The reference implementation for asset issuance. Used by RGB Lib under the hood.
Core · Rust
rgb-ops
Non-consensus-critical APIs for RGB applications. Builds on top of rgb-consensus to provide practical interfaces — bridging core protocol validation with higher-level application development.
Core · Rust
rgb-api
RGB API layer providing structured interfaces for interacting with the RGB protocol. Bridges the gap between core consensus logic and higher-level SDK implementations like RGB Lib.
Core · Rust
rgb-aluvm
AluVM implementation for RGB contract validation. The virtual machine that executes Schema validation scripts client-side during state transition verification.
rgb-protocol/rgb-aluvm ↗
Open source
Core · Rust
rgb-strict-types
Strict type system implementation used by RGB Schemas to precisely define state data types. Every contract state variable is deterministically identified by its semantic ID (semId).
rgb-protocol/rgb-strict-types ↗
Open source
Built by the ecosystem,
ready to use.
SDKs and integrations maintained by RGB ecosystem projects — extending the developer stack beyond the core RGB Protocol Association tooling.
Application · TypeScript/Python
Kaleidoswap SDK
Official multi-language SDK for Kaleidoswap’s atomic swap infrastructure. Includes client.maker for assets, quotes, and swap orders, and client.rln for RGB Lightning Node control. Testnet/signet only.
Application · TypeScript
RGB SDK for Web
Browser-first SDK for in-browser RGB assets and Lightning payments — runs an LDK-based RGB Lightning Node compiled to WebAssembly entirely in the browser. No server, no Node.js, no native binaries.
Application · TypeScript
RGB module for Tether’s WDK
Bridges Tether’s Wallet Development Kit interfaces with RGB — key derivation, UTXO orchestration, asset issuance (NIA/CFA/UDA/IFA), transfers, and encrypted backups through familiar WDK abstractions.
Where to go
from here.

Get started guide
Step-by-step tutorial — from setup to first RGB asset on mainnet.


GitHub — rgb-protocol
Core protocol repositories and documentation.
github.com/rgb-protocol ↗

GitHub — RGB-Tools
SDK, wallets, Lightning Node, and tooling repositories.
github.com/RGB-Tools ↗


RGB Community Hub
Ask questions, share integrations, get help from the community. t.me/rgbtelegram ↗
Ready to start building
on RGB Protocol on Bitcoin?
Follow the step-by-step guide — from setup to your first RGB asset.
