Install RGB

To try out RGB you have to install the appropriate libraries and software. Depending on your use case you may need to install:

  • RGB Command-line

    For power desktop users, the best way to experience RGB is to use rgb command-line tool which, similarly to git command, performs all operations with RGB smart contracts.

    Install rgb

  • RGB Node

    RGB Node is a daemon/service which runs in the background, provides RPC API, and allows you to always be online and accept incoming RGB transfers without any third-party server.

    Install RGB Node

  • Wallets

    Wallets provide graphical user interface for RGB. If you plan to transact with RGB assets or use RGB contracts, the best way to start is to install one of the existing wallets.

    Check Wallets

RGB command-line tool

The main command-line tool to work with RGB smart contracts is rgb. It is written in Rust programming language and is open-sourced under Apache 2.0 license. The tool provides complete RGB functionality locally, not requiring any node or server connection outside of Electrum server.

You can install the tool from crates repository or build from sources, located on GitHub.

Prerequisites

Before installing rgb in either way, you need to install components used in its build process.

First, you need to install cargo. Minimum supported rust compiler version (MSRV): 1.66, rust 2021 edition.

Next, you need to install developer components, which are OS-specific:

  • Linux

    sudo apt update
    sudo apt install -y build-essential cmake pkg-config
    
  • MacOS

    brew install cmake pkg-config
    
  • Windows: download and install the latest Visual Studio Redistributable

Installing from crates.io

$ cargo install rgb-contracts --all-features

Before the final RGB release it might be required to specify concrete pre-release version as an argument:

$ cargo install rgb-contracts --all-features --version 0.10.0

Building from source

By building from the master tip you can get the latest nightly version of rgb. Otherwise, you can check one of our release tags.

$ git clone https://github.com/RGB-WG/rgb
$ cd rgb
$ cargo install --path . --all-features

RGB Node

RGB Node is a daemon/service which runs in the background, provides RPC API, and allows you to always be online and accept incoming RGB transfers without any third-party server. You can install it on your server machine and then interact with it locally or remotely by using rgb-cli command line utility. You may also add your RGB Node address to RGB wallets that support it, which will allow you to issue invoices using your own RGB node instance.

The detailed RGB node install instructions can be found in its GitHub repo.

Please pay attention that the current version of RGB Node supports the previous RGB protocol version, v0.9, and is not compatible with the latest protocol changes. Until a new RGB Node v0.10 is released it is recommended to use the RGB command-line tool as described in the previous section.

RGB Wallets

RGB wallets are developed by community and independent vendors. Please keep in mind that there is no "official" RGB GUI wallet.

NB: All existing wallets were not yet updated to the latest RGB protocol version v0.10 and are not compatible with the modern RGB contracts. If you are interested in trying the new RGB v0.10 features please use command-line tool.

  • MyCitadel

    The first GUI wallet supporting RGB, created back in 2021 by people who developed RGB. It provides cross-platform desktop wallet and iOS/iPad wallet. Mobile wallet allows to work with fungible RGB assets.

  • BitMask

    The first NFT wallet for RGB which can run in a web browser and interact with RGB contracts similar to MetaMask in Ethereum. The wallet is created by DIBA – issuer of Unique Digital Assets on bitcoin.

  • Iris

    The first Android wallet made by team at Bitfinex working on RGB integration and RGB-related tools. Supports both fungible and non-fungible assets.

Next steps

With the RGB command-line tool or node installed as described above, you can start using RGB – accept asset transfers or create your own contracts. You can learn how to use these tools in our power user guidelines.