@api3/chains

中文文档
11.8.0发布于 2025/02/13MITTypeScriptCommonJS构建来源已验证近 30 天下载 3037

API3 链条

中文使用文档
文档目录14 节
  1. * 安装
  2. • API
  3. 中国
  4. 硬汉网络
  5. 硬汉 Config.etherscan ()
  6. 硬汉 Config. get Envariable Names ()
  7. 双链链( )
  8. 类型
  9. 脚本
  10. 生成:链条
  11. 提供者: 正在
  12. 发展
  13. 验证
  14. · 释出

API3 链条

npm version downloads per week continuous build provider checks license

API3项目中链条相关信息的单一真相来源

* 安装

npm install @api3/chains --save
yarn add @api3/chains
pnpm add @api3/chains

• API

从此软件包导出以下变量/功能

中国

支持链列表的单一真相来源 . 静态数组 Chain 对象.

import { CHAINS } from '@api3/chains';
console.log(CHAINS);
/*
[
  {
    name: 'Arbitrum Sepolia testnet',
    alias: 'arbitrum-sepolia-testnet',
    id: '421614',
    ...
  },
  ...
]
*/

硬汉网络

返回一个对象,其中密钥是每个链子的别名,而值是可以作为对象的对象 networks 领域 hardhat.config.js。 。 。 .

默认 url 值可以被链式特定环境变量所压倒. 这些环境变量的形式是: HARDHAT_HTTP_RPC_URL_${toUpperSnakeCase(chain.alias)}例如. HARDHAT_HTTP_RPC_URL_ARBITRUM_SEPOLIA_TESTNET。 。 。 .

import { hardhatConfig } from '@api3/chains';
console.log(hardhatConfig.networks());
/*
{
  "arbitrum-sepolia-testnet": {
      accounts: { mnemonic: '' },
      chainId: '421614',
      url: 'https://...',
  },
  ...
}
*/

硬汉 Config.etherscan ()

返回一个对象,其中密钥是每个链子的别名,而值是可以作为对象的对象 etherscan 领域 hardhat.config.js (要求 hardhat-etherscan 插件) (中文(简体) ).

注: 硬叶鞋 需要我们使用假的 API 密钥 与 Blockscout 屏蔽探索者 API 。 我们用"DUMMY VALUE",但有可能是别的.

import { hardhatConfig } from '@api3/chains';
console.log(hardhatConfig.etherscan());
/*
{
  apiKey: {
    'arbitrumSepolia': { ... }
  },
  customChains: [
    ...
  ]
}
*/

硬汉 Config. get Envariable Names ()

返回有勘探者所需的 API 密钥的链条的预期环境变量名称。 阵列还包括一个单 MNEMONIC 用于配置所有网络的变量.

注:每个 ETHERSCAN_API_KEY_ 财务报告和审定财务报表 HARDHAT_HTTP_RPC_URL_ 环境变量将链的别名作为后缀,其中别名被转换为上蛇案.

import { hardhatConfig } from '@api3/chains';
console.log(hardhatConfig.getEnvVariableNames());
/*
[
  'MNEMONIC',
  'ETHERSCAN_API_KEY_ARBITRUM_SEPOLIA_TESTNET',
  ...
  'HARDHAT_HTTP_RPC_URL_ARBITRUM_SEPOLIA_TESTNET',
  ...
]
*/

双链链( )

返回格式中的链条数组 维埃姆 期待着 每个链对象都可以用来 创建 Viem 公共客户端。 。 。 .

额外 rpcUrls 通过使用环境变量可以(可选择)添加数值。 这些环境变量的形式是: API3_CHAINS_HTTP_RPC_URL_${toUpperSnakeCase(chain.alias)}。如果检测到某一链的匹配环境变量,则该变量将被添加到 http 数组 rpcUrls.environment 对象。 如果没有检测到匹配的环境变量, 那么 http 数组为空.

import { viemConfig } from '@api3/chains';
console.log(viemConfig.chains());
/*
[
  {
    id: 421613,
    name: 'arbitrum-sepolia-testnet',
    network: 'arbitrum-sepolia-testnet',
    rpcUrls: { default: ..., public: ..., environment: ... }
    ...
  },
  ...
]
*/

类型

类型也导出,可见于 src/types.ts。 。 。 . 类型来自 佐德语 计划. 这些计划也被用来验证每个链.

脚本

下列工具脚本可供使用

生成:链条

生成最新的 CHAINS 矩阵和输出文件到 src/generated/chains.ts

pnpm generate:chains

提供者: 正在

通过链条列表进行迭接,以检查链条的配置是否正确并具有响应性.

pnpm providers:ping

发展

最常见的变化类型是增加或更新一个链条。 可以通过创建或编辑 chains/ 目录.

如果对链作任何改变,你将需要"再生"链. 这将把所有的 JSON 文件汇编成一个单一的 TypeScript 文件, 以便导入项目 。 可用下列命令完成此任务

pnpm generate:chains

TypeScript链的列表也针对所有JSON文件列表进行验证,以确保所有文件同步.

注:如果不重新生成 TypeScript 链, 您将无法将更改推向链条 .

验证

验证可以通过下列命令运行.

# Validate each chain JSON file conforms to the zod schemas
pnpm validate:chains

# Run all validations
pnpm validate

· 释出

自动处理新版本 变化。在合并前,拉动请求应当包括更改器文件. 这些可以通过运行生成 pnpm changeset 并遵循指示。 一旦新版本准备发布, 只需合并 main 输入 production 树枝。 更改集文件将合并为一个新版本,该版本将发布到npm.

更多信息载于本报告 API3 准则。 。 。 .

版本与发布记录

@api3/chains 共发布 112 个版本,首次发布于 2023/03/06;过去 12 个月发布了 0 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
11.8.0latest2025/02/131.7 年前
11.7.02025/02/121.7 年前
11.6.02025/02/061.7 年前
11.5.12025/02/041.8 年前
11.5.02025/01/151.8 年前
11.4.22025/01/061.8 年前

关于 @api3/chains 的常见问题

@api3/chains 是什么?

API3 链条

如何安装 @api3/chains?

在项目目录运行 npm install @api3/chains,或使用 pnpm add / yarn add / bun add。

@api3/chains 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@api3/chains 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

@api3/chains 可以商用吗?

@api3/chains 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@api3/chains 的下载量有多少?

根据 npm 官方下载统计,@api3/chains 在 2026/10/06 – 2026/11/04 这 30 天内被下载 3,037 次,日均约 101 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@api3/chains 还在维护吗?

最新版本 11.8.0 发布于 2025/02/13(1.7 年前);至今共发布 112 个版本,其中过去 12 个月发布了 0 个;首次发布于 2023/03/06。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。