这个项目能做什么
# 基于EVM的链
此仓库作为以太坊虚拟机(EVM)兼容区块链元数据的中央注册表。数据以JSON格式存储在`_data/chains`目录中,每个文件对应一个特定链,文件名使用其[CAIP-2](https://github.com/ChainAgnostic/CAIPs/blob/master/CAIPs/caip-2.md)表示。
## 数据结构
每个链条目包含基本的连接和识别细节:
- **识别**:`name`、`shortName`、`chainId`和`networkId`。
- **连接性**:用于与区块链交互的`rpc` URL列表。
- **货币**:`nativeCurrency`的详细信息,包括名称、符号和小数位数。
- **特性**:支持的标准,如EIP155或EIP1559。
- **浏览器**:符合EIP3091标准的区块浏览器链接。
- **图标**:通过`_data/icons`目录存储在IPFS中的图标资产引用。
对于Layer 2链或分片,`parent`字段可以将它们链接到基础层,可选包含桥接URL。
## 约束与治理
为防止重放攻击并确保数据完整性,适用严格规则:
- **唯一性**:`shortName`和`name`在所有条目中必须唯一。
- **链ID冲突**:一个链ID只能由一个链持有。第一个有效的拉取请求(PR)声明该ID即获得它。除非原始链已弃用,否则禁止替换现有链的ID。
- **状态管理**:链可以标记为`active`、`incubating`或`deprecated`。弃用的链永远不会被删除,以保持历史完整性。
- **图标要求**:图标必须可通过IPFS公开解析(`ipfs get`),小于250kb,并具有正整数尺寸。
## 聚合
自动化聚合脚本生成合并的JSON文件,可在以下位置获取:
- 完整数据集:`https://chainid.network/chains.json`
- 迷你版:`https://chainid.network/chains_mini.json`
## 使用
此注册表被Web3生态系统中的各种工具广泛采用:
- **钱包**:TREZOR、WallETH、Minerva Wallet。
- **浏览器**:Otterscan。
- **开发者工具**:Wagmi兼容配置、MESC(以太坊支持链的元数据)。
- **列表网站**:chainid.network、chainlist.org、evmchain.info。
## 贡献
贡献者必须确保在提交PR之前通过CI检查。这涉及运行验证脚本(`./gradlew run`)并使用Prettier根据项目风格指南格式化JSON文件。未通过CI的PR在修复前不会被审查。要添加新链,请提交一个包含正确CAIP-2文件名和有效JSON结构的PR。如果需要特定链ID,请通过PR声明;如果要替换链,旧条目必须首先被弃用。如有问题或需要添加到使用列表,请联系维护者。
评论
0 评分人数达到10人后显示
登录后参与讨论。