cosm-utils
Simple utility trait extensions for tendermint-rpc and cosmrs.
Goals
This crate is in very early development. It is not recommended for use in production. I am currently using this specifically for development purposes for other projects.
The goal of this crate is to provide simple utility methods for interacting with tendermint_rpc.
Inspiration
Forked from cosm-tome, but with an emphasis on easier maintenance and a more modular approach.
Crate Status
Features
features | Dev Status |
---|---|
tendermint 0.34 | ✅ |
tendermint 0.37 | ✅ |
automatic tendermint version negotiation | ✅ |
Clients
Backing API | Dev Status |
---|---|
Tendermint RPC HTTP/S | ✅ |
Tendermint RPC Websocket | ✅ |
Modules
Cosmos Module | Dev Status |
---|---|
Auth | ✅ |
Authz | 🚫 |
Bank | ✅ |
Tendermint | 🔨 |
Crisis | 🚫 |
Distribution | 🚫 |
Evidence | 🚫 |
Feegrant | 🚫 |
Gov | 🚫 |
Mint | 🚫 |
Params | 🚫 |
Slashing | 🚫 |
Staking | 🚫 |
Tx | 🔨 |
Upgrade | 🚫 |
Vesting | 🚫 |
CosmWasm | 🔨 |
IBC | 🚫 |
Usage
Simply import the prelude
and use the provided methods directly on a supported client.
// bring traits into scope
use FromStr;
use ;
use ;
// Get you're relevant info
// Here are some examples of what that could look like
let mnemonic = "clump subway install trick split fiction mixed hundred much lady loyal crime fuel wrap book loud mammal plunge round penalty cereal desert essence chuckle";
let address = "cosmos1ya34jc44vvqzdhmwnfhkax7v4l3sj3stkwy9h5";
let key = SigningKey ;
let chain_cfg = ChainConfig ;
let req = SendRequest ;
let tx_options = default;
// Create your client as usual
let rpc_endpoint = "http://localhost:26657";
let client = new.unwrap;
// Then use the provided methods
let res = client
.bank_send_commit
.await
.unwrap;