30 个版本 (破坏性更新)
0.37.0 | 2024年5月28日 |
---|---|
0.35.3 | 2024年4月11日 |
0.35.0 | 2024年3月21日 |
0.33.0 | 2023年12月7日 |
0.1.0 | 2021年11月8日 |
#7 in #subxt
28,935 每月下载量
在 59 个crate中使用 (直接使用 3 个)
110KB
2K SLoC
subxt ·
Subxt 是一个用于与基于 Substrate 的节点进行交互的 Rust 和 WebAssembly 库。它可以:
- 提交外展(这个名字由此而来)。
- 订阅块,从块中读取外展和相关事件。
- 读取和迭代存储值。
- 从元数据中读取常量和自定义值。
- 调用运行时API,并返回结果。
- 通过安全、静态类型接口或当需要灵活性时通过动态接口来完成上述所有操作。
- 编译为WASM并在浏览器中完全运行。
- 通过
subxt-core
crate 在#[no_std]
环境中执行所有这些操作。 - 使用内置的轻客户端 (
smoldot
) 与链交互。
用法
查看 examples 文件夹或 examples 文件夹,其中包含各种大小不同的 subxt
使用示例,或阅读指南 了解更多信息。
从 Substrate 节点下载元数据
使用 subxt-cli
工具从节点下载目标运行时的元数据。
- 安装
cargo install subxt-cli
- 将编码的元数据保存到文件中
subxt metadata -f bytes > metadata.scale
默认情况下,查询默认 https://127.0.0.1:9933/
上本地运行的节点的元数据。如果查询不同的节点,则 metadata
命令接受 --url
参数。
Subxt 文档
有关使用 subxt 的更多详细信息,请访问文档。
集成测试
大多数测试需要一个运行的 substrate 节点进行通信。这是通过为每个测试实例启动一个 substrate 节点来完成的。需要在您的路径上有一个最新的 substrate
可执行文件。
这可以通过 cargo 从源代码安装
cargo install --git https://github.com/paritytech/polkadot-sdk staging-node-cli --force
实际应用
请通过 PR 将您的项目添加到此列表中。
- cargo-contract CLI 用于与 Wasm 智能合约交互。
- xcm-cli CLI 用于提交 XCM 消息。
- phala-pherry Phala 区块链和链下安全工作者的中继器。
- crunch CLI 用于为基于 substrate 的链批量声明每个时代或 X 小时的质押奖励。
- interbtc-clients interBTC 接下来链的客户端实现;值得注意的是金库/中继器和预言机。
- tidext 带有 Stronghold 签名器的 Tidechain 客户端。
- staking-miner-v2 提交 NPos 选举方案并获得奖励。
- polkadot-introspector 监控 Polkadot 节点的工具。
- ink! 智能合约语言,使用
subxt
允许开发者进行端到端测试他们的合约。 - Chainflip 用于原生跨链交易的去中心化交易所。
替代方案
substrate-api-client 提供类似的功能。
许可
本存储库中的所有代码都根据 GPL-3.0 或 Apache-2.0 许可证双许可。有关更多详细信息,请参阅许可证文件。
如果您对我们的产品的许可有任何疑问,请联系我们。
lib.rs
:
用于生成 Substrate 运行时接口的 Subxt 宏。
依赖项
~15–28MB
~418K SLoC