Skip to content

Install the Blobstream binary

The orchestrator is the software that signs the Blobstream attestations, and the relayer is the one that relays them to the target EVM chain.

Install

  1. Install Go 1.20.2

  2. Clone the https://github.com/celestiaorg/orchestrator-relayer repository:

    bash
    git clone https://github.com/celestiaorg/orchestrator-relayer.git
    cd orchestrator-relayer
    git checkout v0.3.0-app-v0.13.2-beta
    git clone https://github.com/celestiaorg/orchestrator-relayer.git
    cd orchestrator-relayer
    git checkout v0.3.0-app-v0.13.2-beta
  3. Install the Blobstream CLI

    sh
    make install
    make install

Usage

sh
# Print help
blobstream --help
# Print help
blobstream --help

How to run

If you are a Celestia-app validator, all you need to do is run the orchestrator. Check out the Blobstream orchestrator page for more details.

If you want to post commitments on an EVM chain, you will need to deploy a new Blobstream contract and run a relayer. Check out the Blobstream relayer page for relayer docs and the Blobstream deployment page for how to deploy a new Blobstream contract.

Note: the Blobstream P2P network is a separate network than the consensus or the data availability one. Thus, you will need its specific bootstrappers to be able to connect to it.

Contributing

Tools

  1. Install golangci-lint
  2. Install markdownlint

Helpful Commands

sh
# Build a new orchestrator-relayer binary and output to build/blobstream
make build

# Run tests
make test

# Format code with linters (this assumes golangci-lint and markdownlint are installed)
make fmt
# Build a new orchestrator-relayer binary and output to build/blobstream
make build

# Run tests
make test

# Format code with linters (this assumes golangci-lint and markdownlint are installed)
make fmt

The smart contract implementation is in blobstream.

The state machine implementation is in x/blobstream.

Blobstream ADRs are in the docs.

Blobstream design explained in this blog post on layer 2s.