{"id":13609824,"url":"https://github.com/ethereum-lists/chains","last_synced_at":"2025-05-13T15:08:10.740Z","repository":{"id":37318451,"uuid":"162613268","full_name":"ethereum-lists/chains","owner":"ethereum-lists","description":"provides metadata for chains","archived":false,"fork":false,"pushed_at":"2025-05-01T07:31:41.000Z","size":391896,"stargazers_count":9650,"open_issues_count":134,"forks_count":7230,"subscribers_count":555,"default_branch":"master","last_synced_at":"2025-05-06T14:56:29.204Z","etag":null,"topics":["chainid","chains","eip155","ethereum","evm","hacktoberfest"],"latest_commit_sha":null,"homepage":"https://chainid.network","language":"Kotlin","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ethereum-lists.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2018-12-20T17:53:10.000Z","updated_at":"2025-05-06T07:45:41.000Z","dependencies_parsed_at":"2023-09-23T07:48:01.333Z","dependency_job_id":"c50e76a6-5180-4463-a71f-b1b05f20a53c","html_url":"https://github.com/ethereum-lists/chains","commit_stats":{"total_commits":2879,"total_committers":1376,"mean_commits":2.092296511627907,"dds":0.8832928100034734,"last_synced_commit":"0b77b04938bc77ed849e9db9583de9ec2621da29"},"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ethereum-lists%2Fchains","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ethereum-lists%2Fchains/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ethereum-lists%2Fchains/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ethereum-lists%2Fchains/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ethereum-lists","download_url":"https://codeload.github.com/ethereum-lists/chains/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253969231,"owners_count":21992262,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["chainid","chains","eip155","ethereum","evm","hacktoberfest"],"created_at":"2024-08-01T19:01:38.437Z","updated_at":"2025-05-13T15:08:10.676Z","avatar_url":"https://github.com/ethereum-lists.png","language":"Kotlin","readme":"# EVM-based Chains\n\nThe source data is in _data/chains. Each chain has its own file with the filename being the [CAIP-2](https://github.com/ChainAgnostic/CAIPs/blob/master/CAIPs/caip-2.md) representation as name and `.json` as extension.\n\n## Example:\n\n```json\n{\n  \"name\": \"Ethereum Mainnet\",\n  \"chain\": \"ETH\",\n  \"rpc\": [\n    \"https://mainnet.infura.io/v3/${INFURA_API_KEY}\",\n    \"https://api.mycryptoapi.com/eth\"\n  ],\n  \"faucets\": [],\n  \"nativeCurrency\": {\n    \"name\": \"Ether\",\n    \"symbol\": \"ETH\",\n    \"decimals\": 18\n  },\n  \"features\": [{ \"name\": \"EIP155\" }, { \"name\": \"EIP1559\" }],\n  \"infoURL\": \"https://ethereum.org\",\n  \"shortName\": \"eth\",\n  \"chainId\": 1,\n  \"networkId\": 1,\n  \"icon\": \"ethereum\",\n  \"explorers\": [{\n    \"name\": \"etherscan\",\n    \"url\": \"https://etherscan.io\",\n    \"icon\": \"etherscan\",\n    \"standard\": \"EIP3091\"\n  }]\n}\n```\n\nWhen an icon is used in either the network or an explorer, there must be a JSON in _data/icons with the name used.\n(e.g. in the above example there must be a `ethereum.json` and a `etherscan.json` in there) - The icon JSON files look like this:\n\n```json\n\n[\n    {\n      \"url\": \"ipfs://QmdwQDr6vmBtXmK2TmknkEuZNoaDqTasFdZdu3DRw8b2wt\",\n      \"width\": 1000,\n      \"height\": 1628,\n      \"format\": \"png\"\n    }\n]\n\n```\n\nwhere:\n * The URL MUST be publicly resolvable through IPFS\n * width and height MUST be positive integers\n * format is either \"png\", \"jpg\" or \"svg\"\n * size MUST be less than 250kb\n\nIf the chain is an L2 or a shard of another chain you can link it to the parent chain like this:\n\n\n```json\n{\n  ...\n  \"parent\": {\n   \"type\" : \"L2\",\n   \"chain\": \"eip155-1\",\n   \"bridges\": [ {\"url\":\"https://bridge.arbitrum.io\"} ]\n  }\n}\n```\n\nwhere you need to specify the type and the reference to an existing parent. The field about bridges is optional.\n\nYou can add a `status` field e.g. to deprecate (via status `deprecated`) a chain (a chain should never be deleted as this would open the door to replay attacks)\nOther options for `status` are `active` (default) or `incubating`\n\n## Aggregation\n\nThere are also aggregated json files with all chains automatically assembled:\n * https://chainid.network/chains.json\n * https://chainid.network/chains_mini.json (miniaturized - fewer fields for smaller filesize)\n\n## Constraints\n\n * the shortName and name MUST be unique - see e.g. EIP-3770 on why\n * if referencing a parent chain - the chain MUST exist in the repo\n * if using an IPFS CID for the icon - the CID MUST be retrievable via `ipfs get` - not only through some gateway (means please do not use pinata for now)\n * for more constraints you can look into the CI\n\n## Collision management\n\n We cannot allow more than one chain with the same chainID - this would open the door to replay attacks.\n The first pull request gets the chainID assigned. When creating a chain we can expect that you read EIP155 which states this repo.\n All pull requests trying to replace a chainID because they think their chain is better than the other will be closed.\n The only way to get a chain reassigned is when the old chain gets deprecated. This can e.g. be used for testnets that are short-lived. But then you will get the redFlag \"reusedChainID\" that should be displayed in clients to warn them about the dangers here.\n\n## Getting your PR merged\n### before PR is submitted\n\nBefore submitting a PR, please ensure all checks pass by running:\n\n```bash\n$ ./gradlew run\n\nBUILD SUCCESSFUL in 7s\n9 actionable tasks: 9 executed\n```\n\nAdditionally, run Prettier to format your JSON according to the style [defined here ](https://github.com/ethereum-lists/chains/blob/master/.prettierrc.json)\ne.g. run\n\n```\nnpx prettier --write _data/*/*.json\n```\n\n### Once PR is submitted\n\n * Make sure CI is green. There will likely be no review when the CI is red.\n * When making changes that fix the CI problems - please re-request a review - otherwise it is too much work to track such changes with so many PRs daily\n\n## Usages\n### Tools\n * [MESC](https://paradigmxyz.github.io/mesc)\n\n### Explorers\n * [Otterscan](https://otterscan.io)\n\n### Wallets\n * [WallETH](https://walleth.org)\n * [TREZOR](https://trezor.io)\n * [Minerva Wallet](https://minerva.digital)\n\n### EIPs\n * EIP-155\n * EIP-3014\n * EIP-3770\n * EIP-4527\n\n### Listing sites\n * [chainid.network](https://chainid.network) / [chainlist.wtf](https://chainlist.wtf)\n * [chainlist.org](https://chainlist.org)\n * [Chainlink docs](https://docs.chain.link/)\n * [dRPC Chainlist - Load-balanced public nodes](https://drpc.org/chainlist)\n * [eth-chains](https://github.com/taylorjdawson/eth-chains)\n * [EVM-BOX](https://github.com/izayl/evm-box)\n * [evmchain.info](https://evmchain.info)\n * [evmchainlist.org](https://evmchainlist.org)\n * [networks.vercel.app](https://networks.vercel.app)\n * [Wagmi compatible chain configurations](https://spenhouet.com/chains)\n * [chainlist.simplr.sh - Info packaged single pager](https://chainlist.simplr.sh)\n\n### Other\n * [FaucETH](https://github.com/komputing/FaucETH)\n * [Sourcify playground](https://playground.sourcify.dev)\n * [Smart Contract UI](https://xtools-at.github.io/smartcontract-ui)\n\n * Your project - contact us to add it here!\n","funding_links":[],"categories":["Kotlin"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fethereum-lists%2Fchains","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fethereum-lists%2Fchains","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fethereum-lists%2Fchains/lists"}