このプロジェクトについて

# EVMベースのチェーン このリポジトリは、Ethereum Virtual Machine(EVM)互換ブロックチェーンに関するメタデータの中央レジストリとして機能します。データは`_data/chains`ディレクトリ内にJSON形式で構造化され、各ファイルは[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に保存されたアイコンアセットへの参照。 レイヤー2チェーンまたはシャードの場合、`parent`フィールドでベースレイヤーにリンクでき、オプションでブリッジURLを含めることができます。 ## 制約とガバナンス リプレイ攻撃を防ぎ、データの整合性を確保するために、厳格なルールが適用されます: - **一意性**:`shortName`と`name`はすべてのエントリ間で一意である必要があります。 - **チェーンIDの衝突**:特定のチェーンIDを保持できるチェーンは1つだけです。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(Ethereumサポートチェーンのメタデータ)。 - **リストサイト**:chainid.network、chainlist.org、evmchain.info。 ## 貢献 貢献者は、PRを提出する前にCIチェックが合格することを確認する必要があります。これには、検証スクリプト(`./gradlew run`)の実行と、プロジェクトのスタイルガイドに従ってPrettierを使用したJSONファイルのフォーマットが含まれます。CIに失敗するPRは、修正されるまでレビューされません。新しいチェーンを追加するには、正しいCAIP-2ファイル名と有効なJSON構造でPRを提出してください。特定のチェーンIDが必要な場合は、PRでそれを主張してください。チェーンを置き換えたい場合は、古いエントリを最初に非推奨にする必要があります。使用リストに関する質問や追加については、メンテナーに連絡してください。