17个版本 (10个稳定版)
2.0.0-beta.1 | 2024年5月8日 |
---|---|
1.1.5 | 2024年5月22日 |
1.1.4 | 2024年1月22日 |
1.1.3 | 2023年12月7日 |
0.4.0 | 2023年7月14日 |
#11 in #wallet
2,708 每月下载量
在 4 crates 中使用
1.5MB
34K SLoC
碘塔SDK库
碘塔SDK是一个基于Rust的项目,它提供了一个方便高效的方式与运行在IOTA 2.0协议上的Shimmer和IOTA网络中的节点进行交互。它主要由两个主要模块组成:client
和wallet
。
目录
功能
-
客户端模块:碘塔SDK中的
client
模块提供了低级函数,允许你对与Shimmer节点的交互进行细粒度控制。该模块是无状态的。它提供了对底层API端点的访问,并支持自定义消息构建和与网络的直接通信等高级操作。 -
钱包模块:碘塔SDK中的
wallet
模块提供了高级功能,用于管理账户、生成地址、创建交易以及与Shimmer网络交互。它为开发者提供了一个用户友好的界面,用于在Shimmer网络上构建应用程序。它是状态化的,并且可以可选地与IOTA Stronghold进行交互,以处理种子、存储和状态备份。 -
绑定:碘塔SDK包括对
Python
、Node.js
和WASM
的绑定,允许你在你喜欢的编程语言中使用SDK。这些绑定提供了与现有项目的无缝集成,实现了跨平台兼容性和灵活性。
开发分支结构
此库遵循以下分支策略
分支 | 描述 |
---|---|
develop |
为未来版本的开发阶段网络进行持续开发。此分支将在发布时合并到 staging 。 |
生产 |
IOTA网络的最新版本。 |
开发阶段 |
Shimmer网络的最新版本。 |
其他 | 其他可能反映当前项目的分支。例如 develop ,一旦准备就绪,它们也会进入 staging 。 |
开始之前
此文件专注于Rust核心SDK。如果您想了解安装和使用Python、Node.js和Wasm的说明,请参阅 Python、Node.js 和 Wasm 指令。
要求
IOTA SDK需要 Rust
和 Cargo
。您可以在 Rust文档 中找到安装说明。
我们建议您首先将Rust编译器更新到最新稳定版本。
rustup update stable
依赖项
您还必须安装 cmake
、clang
和 openssl
。您可能需要安装系统上的其他构建工具,以便使用Cargo成功运行构建过程。
Windows
您可以从官方网站下载 cmake
。您可以使用 vcpkg 或 chocolatey 安装 openssl
。
- 使用
vcpkg
安装openssl
./vcpkg.exe install openssl:x64-windows
./vcpkg.exe integrate install
# You may want to add this to the system environment variables since you'll need it to compile the crate
set VCPKGRS_DYNAMIC=1
- 使用
chocolatey
安装openssl
choco install openssl
# You may need to set the OPENSSL_DIR environment variable
set OPENSSL_DIR="C:\Program Files\OpenSSL-Win64"
macOS
您可以使用 Homebrew
安装 cmake
和 openssl
。
brew install cmake [email protected]
Linux
您可以使用您发行版的包管理器安装 cmake
、clang
和 openssl
,或者从它们的网站下载。在Debian和Ubuntu上,您还需要 build-essential
和 libudev-dev
软件包。
入门
安装碘塔SDK
要开始在您的Rust项目中使用IOTA SDK,您可以在您的 Cargo.toml
文件中包含以下依赖项
[dependencies]
iota-sdk = { git = "https://github.com/iotaledger/iota-sdk", branch = "develop" }
客户端使用
以下示例创建了一个连接到Shimmer测试网的客户端实例,并通过调用 Client.get_info()
获取节点信息,然后打印节点信息。
sdk/examples/client/getting_started.rs
钱包使用
以下示例将使用StrongholdSecretManager创建一个新的钱包账户。在Cargo.toml导入中需要 features = ["stronghold"]
。要持久化钱包到数据库,可以添加 "rocksdb"
。
sdk/examples/wallet/getting_started.rs
示例
您可以使用提供的代码 示例 来熟悉IOTA SDK。您可以使用以下命令运行任何示例
cargo run --release --all-features --example example_name
其中 example_name
是示例文件夹中Cargo.toml 中的名称。例如
cargo run --release --all-features --example create_account
您可以使用以下命令获取可用代码示例的列表
cargo run --example
API参考
IOTA SDK Rust API参考在IOTA SDK存储库文档中。
贡献
如果您发现任何问题或对改进有建议,请访问GitHub仓库提交问题。您还可以提交包含拉取请求,包括错误修复、新功能或文档改进。
在贡献之前,请阅读并遵守行为准则。
许可
IOTA SDK是开源软件,采用Apache License 2.0授权。更多信息请参阅LICENSE。
依赖项
~10–51MB
~816K SLoC