Expand description
High-level Rust SDK for interacting with the Avail blockchain.
This crate provides ergonomic helpers for connecting to Avail nodes, submitting transactions, querying blocks and events, and subscribing to chain updates.
§Quick Start
use avail_rust_client::{Client, TURING_ENDPOINT};
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let client = Client::new(TURING_ENDPOINT).await?;
let best = client.best().block_header().await?;
println!("Best block: {:?}", best.hash());
Ok(())
}Re-exports§
pub use client::Client;pub use constants::LOCAL_ENDPOINT;pub use constants::LOCAL_WS_ENDPOINT;pub use constants::MAINNET_ENDPOINT;pub use constants::MAINNET_WS_ENDPOINT;pub use constants::ONE_AVAIL;pub use constants::ONE_HUNDRED_AVAIL;pub use constants::ONE_THOUSAND_AVAIL;pub use constants::TEN_AVAIL;pub use constants::TURING_ENDPOINT;pub use constants::TURING_WS_ENDPOINT;pub use extensions::AccountIdExt;pub use extensions::H256Ext;pub use extensions::KeypairExt;pub use extensions::SecretUriExt;pub use submission::BlockState;pub use submission::SubmittableTransaction;pub use submission::SubmittedTransaction;pub use submission::TransactionReceipt;pub use transaction_options::MortalityOption;pub use transaction_options::Options;pub use transaction_options::RefinedMortality;pub use transaction_options::RefinedOptions;pub use constants::dev_accounts;pub use error::Error;pub use error::UserError;pub use subscription::Sub;pub use avail_rust_core;pub use avail_rust_core::ext::codec;pub use avail_rust_core::ext::primitive_types;pub use avail_rust_core::ext::scale_info;pub use avail_rust_core::ext::subxt_core;pub use avail_rust_core::ext::subxt_rpcs;pub use avail_rust_core::ext::subxt_signer;
Modules§
- avail
- block
- chain
- client
- High-level Avail client combining RPC access with helper APIs for blocks and transactions.
- clients
- RPC client implementations for different transport layers and testing scenarios.
- config
- constants
- conversions
- error
- ext
- extensions
- platform
- Platform-specific async runtime primitives for native and WASM targets.
- prelude
- submission
- subscription
- Helpers for building block, extrinsic, and justification streaming subscriptions.
- transaction_
api - Builders for transactions targeting specific Avail pallets.
- transaction_
options - Builders for configuring transaction submission defaults (nonce, tip, mortality).
- utils
Structs§
- Avail
Header - Block
Info - Compact
Data Lookup - Encoded
Extrinsic - Extrinsic
- Extrinsic
Call - Extrinsic
Extra - Extrinsic
Signature - Grandpa
Justification - H256
- Fixed-size uninterpreted hash type with 32 bytes (256 bits) size.
- Kate
Commitment - Keypair
- An sr25519 keypair implementation. While the API is slightly different, the logic for
this has been taken from
sp_core::sr25519and we test against this to ensure conformity. - Legacy
Block - The response from
chain_getBlock - Secret
Uri - A secret uri (
SURI) that can be used to generate a key pair. - Storage
Double MapIterator - Storage
MapIterator - U256
- Little-endian large integer type 256-bit unsigned integer.
- V3Header
Extension
Enums§
Traits§
- Extrinsic
Decodable - HasHeader
- Storage
Double Map - Storage
Map - Storage
Value - Transaction
Event Decodable - Transaction
Event Encodable
Functions§
- multi_
account_ id - Derive a multi-account ID from the sorted list of accounts and the threshold that are required.