substreams-cosmos-core 0.2.1

Substreams development kit for Cosmos chains, contains Firehose Block model and helpers.
Documentation

Substreams for Cosmos

This library contains the generated Rust protobuf bindings for Cosmos Block as well as helper methods to extract and parse block data.

📖 Documentation

https://docs.rs/substreams-cosmos

Further resources

Install

cargo add substreams-cosmos

Usage

Refer to Docs.rs for helper methods on Block that extract action and transaction iterators from the Cosmos block.

Cargo.toml

[dependencies]
substreams = "0.5"
substreams-cosmos = "0.1"

src/lib.rs

use substreams::errors::Error;
use substreams_cosmos::pb::{Block, Events};

#[substreams::handlers::map]
fn map_events(block: Block) -> Result<Events, Error> {
    let mut events = vec![];

    for tx in block.tx_results {
        for event in tx.events {
            events.push(event);
        }
    }
    Ok(Events { events })
}

Release