docs.rs failed to build tronic-0.3.1
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Visit the last successful build:
tronic-0.2.1
🦀 tronic
A modular, type-safe, async-first Rust client for the Tron blockchain — inspired by Alloy and built for real-world smart contract interaction.
✨ Features
Core Infrastructure
- 🧱 Typed Smart Contract Calls — Powered by
alloy-sol-types
macros for compile-time safety - 📡 Dual Protocol Support — Both gRPC (via
tonic
) and JSON-RPC providers (WIP) - 🔐 Pluggable Signers — Local, or custom async signing backends
- ⚡ Async-First — Built on Tokio for high-performance blockchain interaction
Account Management
- 🔑 Multi-Signature Support — Complete workflow for threshold signatures
- 🏦 Permission Management — Modify account permissions programmatically
- ❄️ Resource Delegation — Handle bandwidth/energy freezing/unfreezing (WIP)
Smart Contract Interaction
- 📝 TRC-20 — Type-safe token transfers with
alloy
-style builders - 📜 Contract ABI Codegen — Generate types from Solidity ABIs (need to implement a wrapper by hand currently)
- 🔍 Event Filtering — Rich event subscription and historical querying
- 🧮 Transaction Estimation — Precise energy & bandwidth calculation with fallback modes
Advanced Transaction Features
- 🚦 Transaction Batching — Group multiple operations atomically (WIP)
- ⏱️ Deadline Handling — Automatic/manual transaction expiration management
🚀 Quickstart
use Client;
use AutoSigning;
use TronAddress;
use GrpcProvider;
use LocalSigner;
use trx;
// Construct a client with a signing backend
let client = builder
.provider
.signer
.build;
// Send transaction
let txid = client
.send_trx
.to
.amount
. // Uses automatic signing strategy
.await?
.broadcast
.await?;
📖 Learn by Example
Explore practical usage scenarios in our examples directory:
Multisig
- Multi-signature USDT transferEvent listener
- Real-time USDT transfer monitoringTrx transfer
- Simple trx transfer example
TODO
- Implement batching
- Unit & integration testing
- More examples
- Prepare documentation