#blockchain #multiversx #api-bindings #api #smart-contracts #sdk

novax

NovaX 是您构建与 MultiversX 区块链无缝交互的强大软件的首选工具包

35 个版本

新版本 0.1.8 2024 年 8 月 23 日
0.1.7-beta.22024 年 7 月 17 日
0.1.7-beta.12024 年 5 月 31 日
0.1.4 2024 年 3 月 31 日
0.0.24 2023 年 11 月 26 日

#13 in #multiversx

Download history 134/week @ 2024-05-03 8/week @ 2024-05-10 20/week @ 2024-05-17 9/week @ 2024-05-24 182/week @ 2024-05-31 21/week @ 2024-06-07 17/week @ 2024-06-14 2/week @ 2024-06-21 81/week @ 2024-07-12 24/week @ 2024-07-19 14/week @ 2024-07-26 156/week @ 2024-08-02 191/week @ 2024-08-09 293/week @ 2024-08-16

655 每月下载量
4 crates 中使用

GPL-3.0-only

320KB
6K SLoC

🌌 NovaX:终极 MultiversX 区块链工具包

NovaX 是您构建与 MultiversX 区块链无缝交互的强大软件的首选工具包。利用智能合约交互、代码生成和编译时自动类型转换的强大功能,确保最大程度的安全和效率。

Crates.io Documentation License: GPL v3

估算 WEGLD -> USDC 交换结果

🔥 特性

  • 代码生成: 从 ABIs 无缝生成客户端代码。享受 ABIs 中智能合约端点和视图的自动补全功能,简化您的开发过程。
  • 安全合约交互: 类型安全的调用和查询功能确保所有内容在编译时进行检查。
  • 错误处理: 所有错误都通过 Result 类型处理。
  • 本地 Rust 类型转换: 自动将复杂的类型如 ManagedBufferManagedVec 等,转换为本地 Rust 类型,如 StringVec 等,无论是输入还是输出。
  • 自动缓存: 指定您的缓存策略(本地、Redis 等),NovaX 将处理其余部分。组合多个策略,并选择锁定类似交互的操作以最小化冗余请求。
  • 区块链信息检索: 轻松获取代币属性和地址余额。
  • 模拟区块链交互: 只需一行代码即可在模拟环境中执行请求。
  • 区块链克隆: 需要模拟与当前区块链状态相匹配的环境?指定要克隆的地址,NovaX 将获取这些地址的存储、代码和余额。将克隆的数据保存到文件中,以便在执行中保持一致的环境—理想用于集成测试。

💡 应用场景

NovaX功能丰富,专为开发者量身打造,帮助他们构建在MultiversX区块链上稳健、高效、可测试的解决方案。以下是一些NovaX大放异彩的场景

🖥️ 高效、安全、可测试的后端

有信心构建后端系统。NovaX的类型安全性和自动完成功能让您可以更少地担心运行时错误地与区块链交互。其模拟和克隆功能允许您进行彻底的测试,以确保您的后端保持稳健。

🤖 创建机器人

开发与区块链交互的机器人从未如此简单。无论您是构建交易机器人、监控机器人还是其他任何自动化系统,NovaX都提供了确保您的机器人可靠高效运行的工具。

🚀 部署和交互脚本

编写用于部署合约、管理升级或与区块链上现有合约交互的脚本。NovaX从ABIs生成代码简化了脚本创建和执行,节省了时间并减少了错误。

📊 生成数据报告

从区块链数据生成有洞察力的数据报告。轻松获取、分析和报告代币属性、地址余额和合约交互。NovaX的缓存功能最小化了区块链的负载,确保您的数据报告高效且及时。

🎭 简易模拟和模拟交易

模拟和模拟对于测试和验证智能合约交易至关重要。借助NovaX,您可以轻松创建模拟环境并模拟交易,以确保在部署到真实区块链之前,您的智能合约逻辑完美无误。

🛠️ 安装

按照以下步骤无缝集成NovaX到您的项目中

1️⃣ 创建目录

在项目的根目录下创建一个名为 .novax 的文件夹。在 .novax 中创建一个名为 abis 的子文件夹,您将在此存储希望与之交互的所有合约的ABIs。

mkdir -p .novax/abis

2️⃣ 设置环境变量

通过设置环境变量通知Cargo和库abis文件夹的位置。理想情况下,将以下片段添加到您的 .cargo/config.toml

[env]
NOVAX_PATH = { value = ".novax", relative = true }

3️⃣ 更新依赖项

novax 添加到 Cargo.toml 文件中的 [dependencies] 部分

[dependencies]
novax = "0.0.22"

4️⃣ 构建并享受吧!

现在,构建您的项目并开始开发。为了获得更丰富的体验,请确保您的IDE重新索引Cargo项目以启用自动完成

  • 在VSCode中,重新索引通常自动发生。
  • 在基于JetBrains的IDE(如CLion)中,导航到右侧的Cargo面板,并单击刷新图标。
cargo build

完成这些步骤后,您就可以充分利用NovaX工具集了!

依赖关系

~21–34MB
~587K SLoC