#internet-computer #canister #idl #tool #candid #cli-tool

bin+lib candid-gen

CLI 工具,自动从 Rust canister 生成 Internet Computer (IC) 项目的 Candid 接口文件

1 个不稳定版本

0.1.0 2024 年 6 月 14 日

#3#canister

自定义许可协议

26KB
460 代码行

candid-gen

GitHub release (latest by date) GitHub

概述

candid-gen 是一个 CLI 工具,它自动从 Rust canister 生成 Internet Computer (IC) 项目的 Candid 接口文件。它简化了创建 .did 文件的过程,确保您的 Rust canister 被正确记录,并准备好在 IC 上部署。

功能

  • 自动从 Rust canister 生成 Candid 接口文件。
  • 支持指定单个 canister 或为项目中的所有 canister 生成文件。
  • 确保所有必要的工具和目标都已安装并可用。

安装

先决条件

  • Rust 和 Cargo
  • rustup 已安装 wasm32-unknown-unknown 目标
  • candid-extractor

安装过程

要安装 candid-gen,您可以使用 cargo install 安装在 crates.io 上发布的最新版本

cargo install candid-gen

或者您可以通过克隆仓库并从 master 分支构建项目

git clone https://github.com/cwnt-io/candid-gen.git
cd candid-gen
cargo install --path .

使用方法

命令行界面

candid-gen [CANISTERS_NAMES]...

参数

  • [CANISTERS_NAMES]...:指定一个或多个 canister 名称以生成 Candid 文件。每个 canister 名称应作为单独的参数提供。如果没有传递 canister 名称,则将为项目中的每个 Rust canister 生成 Candid 文件。

选项

  • -h--help:打印帮助信息
  • -V--version:打印版本信息

示例

为项目中的所有 Rust canister 生成 Candid 文件

candid-gen

为特定 canister 生成 Candid 文件

candid-gen canister1
candid-gen canister1 canister2

配置

环境设置

确保以下工具已安装并在您的PATH中可用

  • rustup
  • cargo
  • candid-extractor

此外,请确保已安装 wasm32-unknown-unknown 目标

rustup target add wasm32-unknown-unknown

贡献

欢迎贡献!如果您想为 candid-gen 做贡献,请打开一个问题或提交一个拉取请求。

开发

要设置开发环境

  1. 克隆仓库

    git clone https://github.com/cwnt-io/candid-gen.git
    cd candid-gen
    
  2. 安装依赖项

    cargo build
    
  3. 运行测试

    cargo test
    

许可协议

本项目受Apache License 2.0条款的许可。有关详细信息,请参阅LICENSE文件。

作者

致谢

  • 受互联网计算机社区需求启发。
  • 使用Rust、Clap和其他开源工具构建。

联系方式

如有任何疑问,请通过电子邮件联系作者或在GitHub上打开一个问题。

依赖项

约5-14MB
约164K SLoC