6 个版本 (3 个重大更新)
0.4.2 | 2022年10月6日 |
---|---|
0.4.1 | 2022年9月21日 |
0.3.0 | 2021年8月1日 |
0.2.0 | 2021年4月23日 |
0.1.0 | 2021年3月26日 |
#1915 in 神奇豆子
每月下载量 70 次
用于 algonaut_sandbox
565KB
13K SLoC
Rust algonaut
Rust algonaut 是一个用于 Algorand 的 Rust SDK。请注意,这个软件包仍在开发中。
use algonaut::algod::v2::Algod;
use algonaut_core::MicroAlgos;
use algonaut_transaction::Pay;
use algonaut_transaction::{account::Account, TxnBuilder};
use std::error::Error;
#[tokio::main]
async fn main() -> Result<(), Box<dyn Error>> {
let algod = Algod::new(
"https://127.0.0.1:4001",
"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
)?;
// an account with some funds
let from_account = Account::from_mnemonic("fire enlist diesel stamp nuclear chunk student stumble call snow flock brush example slab guide choice option recall south kangaroo hundred matrix school above zero")?;
let to_address = "2FMLYJHYQWRHMFKRHKTKX5UNB5DGO65U57O3YVLWUJWKRE4YYJYC2CWWBY".parse()?;
// algod has a convenient method that retrieves basic information for a transaction
let params = algod.suggested_transaction_params().await?;
// we are ready to build the transaction
let t = TxnBuilder::with(
¶ms,
Pay::new(from_account.address(), to_address, MicroAlgos(123_456)).build(),
)
.build()?;
// we need to sign the transaction to prove that we own the sender address
let signed_t = from_account.sign_transaction(t)?;
// broadcast the transaction to the network
let send_response = algod.broadcast_signed_transaction(&signed_t).await?;
println!("Transaction ID: {}", send_response.tx_id);
Ok(())
}
软件包
algonaut_client
包含了algod
、kmd
和indexer
RPC API 的客户端。algonaut_core
定义了 Algorand 的核心结构,如:Address
、Round
、MicroAlgos
等。algonaut_crypto
包含了加密工具,如:ed25519
和mnemonics
。algonaut_encoding
实现了编码实用函数,如serde
访问者。algonaut_transaction
支持开发者构建各种类型的 Algorand 交易。algonaut_abi
应用二进制接口 (ABI),通过标准化接口调用智能合约方法。
外部工具
- tealdbg_launcher 从 Rust 启动 TEAL 调试会话。
集成示例
- React Js / WalletConnect / My Algo 签名 / WASM / 原子交换
- 基本的 React JS / WASM
- 使用 Yew / WASM 的 My Algo 签名
- 使用 Yew / WASM 的支付提示
- 基本 Yew / WASM
- iOS 应用程序
变更日志
阅读变更日志获取更多详细信息。
贡献
你想帮助开发吗?请通过阅读我们的贡献指南来了解如何操作。
致谢
此包基于 @mraof 的工作。
许可证
根据MIT许可证授权。除非你明确声明,否则你故意提交以包含在此包中的任何贡献,都应按上述方式许可,不附加任何额外条款或条件。
Ferris Algonaut 根据Creative Commons Attribution 4.0国际许可证授权。
Rust algonaut
的标志 基于 Font Awesome 的图标,并根据Creative Commons Attribution 4.0国际许可证授权。
依赖项
~14–28MB
~545K SLoC