Avalanche 快速启动
# Avalanche 快速启动
在这个快速入门指南中,我们将从一个简单的启动项目开始,然后通过索引一些实际数据来完成。 这是开发您自己的 SubQuery 项目的良好基础。
如果您正在寻找Terra指南,您可以阅读 Terra特定的快速启动指南。
在本指南的最后,您将拥有一个在 SubQuery 节点上运行的可工作 的 SubQuery 项目,该节点具有一个可以从中查询数据的 GraphQL 端点。
如果您还没有准备好进一步学习,我们建议您熟悉SubQuery中所使用的 terminology。
这个快速启动指南的目标是索引所有 Pangolin token 审批 事件,它只能需要 10-15 分钟
# 准备
# 本地开发环境
- Node (opens new window): 一个现代(如LTS版本)的Node安装。
- Docker (opens new window): 本教程将使用需要Docker的程序。
# 安装 SubQuery CLI
使用 NPM 在终端上全局安装 SubQuery CLI:
# NPM
npm install -g @subql/cli
2
请注意,我们不鼓励使用yarn global
来安装@subql/cli
,因为它的依赖性管理不好,可能会导致下一步的错误。
然后,您可以运行帮助以查看 CLI 提供的可用命令和用法。
subql help
# 初始化 Starter SubQuery 项目
在你想创建SubQuery项目的目录中,只需运行以下命令就可以开始了。
subql init
在初始化 SubQuery project 时,您会被问到一些问题:
- Project Name: A name for your SubQuery project
- 网络。这个SubQuery项目将开发的区块链网络索引,使用键盘上的方向键从选项中选择,对于本指南,我们将使用_"Polkadot"_。
- 网络。这个SubQuery项目将开发的区块链网络索引,使用键盘上的方向键从选项中选择,对于本指南,我们将使用_"Polkadot"_。
- 模板。选择一个子查询项目模板,为开始开发提供一个起点,我们建议选择_"启动项目"_。
- Git仓库(可选)。提供一个Git URL,这个SubQuery项目将被托管在一个Repo中(当托管在SubQuery Explorer中)。
- RPC端点(需要)。提供一个运行中的RPC端点的HTTPS URL,该端点将被默认用于该项目。 此 RPC 节点必须是归档节点 (具有完整链状态)。 在本指南中,我们将使用默认值_"avalanche.api.onfinality.io"_。
- 作者(必填)。在此输入该子查询项目的所有者(例如,你的名字!)。
- 描述(可选)。你可以提供一个关于你的项目的简短段落,描述它包含什么数据以及用户可以用它做什么。
- 版本 (必填):输入一个自定义版本号或使用默认版本(
1.0.0
) - 许可证(必填):提供此项目的软件许可或接受默认设置(
Apache-2.0
)
在初始化过程完成后,您应该看到目录内创建了一个项目名称的文件夹。 此目录的内容应该与 Directory Structure 中列出的内容完全相同。
最后,在项目目录下,运行以下命令来安装新项目的依赖关系。
# 正在对您的项目进行更改
在您刚刚初始化的启动包, 我们为您的新项目提供了标准配置。 您将主要处理下列文件:
- 在
schema.graphql
中的 GraphQL Schema project.yaml
中的项目清单src/mappings/
目录中的映射函数
这个快速启动指南的目标是调整标准启动器项目,以索引所有 Pangolin 批准
事件。
# 更新你的GraphQL Schema文件
schema.graphql
文件定义了各种GraphQL 模式。 遵循GraphQL查询语言的工作方式,模式文件基本上决定了您从 SubQuery 获取数据的格式。 这是一个很好的开始,因为它允许你在前面定义你的最终目标。
我们将更新 schema.graphql
文件来移除所有现有的实体并阅读如下:
type PangolinApproval @entity {
id: ID!
transactionHash: String!
blockNumber: String!
blockHash: String!
addressFrom: String
addressTo: String
amount: String
}
2
3
4
5
6
7
8
9
重要提示:当您对模式文件做任何更改时, 请确保使用命令yarn codegen来重新生成你的类型目录。 现在就做。