Crate cosmrs

Source
Expand description

§CosmRS: Cosmos Wallet and SDK for Rust

Crate Docs Build Status Apache 2.0 Licensed MSRV

Framework for building Cosmos blockchain applications in Rust, modeled off of the Cosmos SDK for Golang.

§About

This library is presently designed to serve as a client for interacting with the Golang implementation of the Cosmos SDK, providing things like wallet functionality such as transaction signing, and a builder/parser for Cosmos SDK formatted transaction messages.

It does not implement server-side functionality (yet), such as hooks and message passing.

§Features

  • CosmWasm: messages used by smart contracts written using CosmWasm
  • Staking: support for staking with validators
  • Transactions: build, sign, and/or parse Cosmos SDK transactions

§Minimum Supported Rust Version

This crate is supported on Rust 1.75 or newer.

§Re-exports

CosmRS re-exports the following crates for easy access:

  • bip32: re-exported as cosmrs::bip32
  • cosmos-sdk-proto: re-exported as cosmrs::proto
  • tendermint: re-exported as cosmrs::tendermint
  • tendermint-rpc: re-exported as cosmrs::rpc (requires rpc crate feature)

Re-exports§

pub use crate::tx::Tx;
pub use cosmos_sdk_proto as proto;
pub use tendermint;
pub use bip32;bip32
pub use tendermint_rpc as rpc;rpc

Modules§

abci
Application/BlockChain Interface (ABCI)-related functionality.
auth
Authentication module: AuthN-related functionality.
bank
Bank module support
cosmwasmcosmwasm
CosmWasm messages
crypto
Cryptographic functionality
devdev
Development-related functionality.
distribution
Distribution module support
feegrant
Fee grant module support
query
Query support
slashing
Slashing module support
staking
Staking module support
tx
Cosmos SDK transaction support.
vesting
Vesting-related types

Structs§

AccountId
Account identifiers
Any
Any contains an arbitrary serialized protocol buffer message along with a URL that describes the type of the serialized message.
Coin
Coin defines a token with a denomination and an amount.
Denom
Denomination.
ErrorReport
The core error reporting type of the library, a wrapper around a dynamic error reporting type.

Enums§

Error
Kinds of errors.

Type Aliases§

Amount
Amounts.
Gas
Gas cost.
Result
type alias for Result<T, Report>