provides metadata for chains
Go to file
dependabot[bot] a478050008
Bump klaxon from 5.5 to 5.6 (#966)
Bumps [klaxon](https://github.com/cbeust/klaxon) from 5.5 to 5.6.
- [Release notes](https://github.com/cbeust/klaxon/releases)
- [Changelog](https://github.com/cbeust/klaxon/blob/master/RELEASE_NOTES.txt)
- [Commits](https://github.com/cbeust/klaxon/compare/5.5...5.6)

---
updated-dependencies:
- dependency-name: com.beust:klaxon
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-12 08:08:17 +01:00
_data Add Venidium Testnet (#965) 2022-03-11 18:59:12 +01:00
.ci Add test stage 2020-11-13 04:19:30 +01:00
.github Do not mark enhancement issues as stale 2022-02-16 05:55:31 +01:00
gradle/wrapper Housekeeping (#885) 2022-02-15 14:03:40 +01:00
model Add native currency to model 2022-01-15 11:02:25 +01:00
processor Bump klaxon from 5.5 to 5.6 (#966) 2022-03-12 08:08:17 +01:00
.gitignore add Gather chains (#598) 2021-11-29 10:43:31 +01:00
build.gradle Bump gradle-versions-plugin from 0.41.0 to 0.42.0 (#833) 2022-02-04 23:32:43 +01:00
gradlew Use gradle 7.2 2021-09-14 13:38:05 +02:00
gradlew.bat Use gradle 6.7 2020-11-13 04:19:29 +01:00
LICENSE Initial commit 2018-12-20 18:53:11 +01:00
README.md Add chainmap - closes #961 (#963) 2022-03-11 11:05:45 +01:00
settings.gradle.kts Split out the model to extra module 2021-12-30 07:38:32 +01:00

EVM-based Chains

The source data is in _data/chains. Each chain has its own file with the filename being the CAIP-2 representation as name and .json ans extension.

Example

{
  "name": "Ethereum Mainnet",
  "chain": "ETH",
  "network": "mainnet",
  "rpc": [
    "https://mainnet.infura.io/v3/${INFURA_API_KEY}",
    "https://api.mycryptoapi.com/eth"
  ],
  "faucets": [],
  "nativeCurrency": {
    "name": "Ether",
    "symbol": "ETH",
    "decimals": 18
  },
  "infoURL": "https://ethereum.org",
  "shortName": "eth",
  "chainId": 1,
  "networkId": 1,
  "icon": "ethereum",
  "explorers": [{
    "name": "etherscan",
    "url": "https://etherscan.io",
    "icon": "etherscan",
    "standard": "EIP3091"
  }]
}

when an icon is used in either the network or a explorer there must be a json in _data/icons with the name used (e.g. in the above example there must be a ethereum.json and a etherscan.json in there) - the icon jsons look like this:


[
    {
      "url": "ipfs://QmdwQDr6vmBtXmK2TmknkEuZNoaDqTasFdZdu3DRw8b2wt",
      "width": 1000,
      "height": 1628,
      "format": "png"
    }
]

where:

  • the URL must be a IPFS url that is publicly resolveable
  • width and height are optional - but when one is there then the other must be there also
  • format is either "png", "jpg" or "svg"

If the chain is an L2 or a shard of another chain you can link it to the parent chain like this:

{
  ...
  "parent": {
   "type" : "L2",
   "chain": "eip155-1",
   "bridges": [ {"url":"https://bridge.arbitrum.io"} ]
  }
}

where you need to specify type 2 and the reference to an existing parent. The field about bridges is optional.

Aggregation

There are also aggregated json files with all chains automatically assembled:

Collision management

If different chains have the same chainID we list the one with the oldest genesis.

Usages