소스 데이터는 _Data/체인에 있습니다. 각 체인에는 자체 파일이 있으며 파일 이름은 CAIP-2 표현이며 이름으로, .json
확장자입니다.
{
"name" : " Ethereum Mainnet " ,
"chain" : " ETH " ,
"rpc" : [
" https://mainnet.infura.io/v3/${INFURA_API_KEY} " ,
" https://api.mycryptoapi.com/eth "
],
"faucets" : [],
"nativeCurrency" : {
"name" : " Ether " ,
"symbol" : " ETH " ,
"decimals" : 18
},
"features" : [{ "name" : " EIP155 " }, { "name" : " EIP1559 " }],
"infoURL" : " https://ethereum.org " ,
"shortName" : " eth " ,
"chainId" : 1 ,
"networkId" : 1 ,
"icon" : " ethereum " ,
"explorers" : [{
"name" : " etherscan " ,
"url" : " https://etherscan.io " ,
"icon" : " etherscan " ,
"standard" : " EIP3091 "
}]
}
네트워크 또는 탐색기에 아이콘이 사용되면 _Data/아이콘에 사용 된 이름이있는 JSON이 있어야합니다 (예 : 위의 예에는 ethereum.json
과 etherscan.json
있어야합니다) - 아이콘 jsons. 이렇게 보인다 :
[
{
"url" : " ipfs://QmdwQDr6vmBtXmK2TmknkEuZNoaDqTasFdZdu3DRw8b2wt " ,
"width" : 1000 ,
"height" : 1628 ,
"format" : " png "
}
]
어디:
체인이 L2 또는 다른 체인의 샤드 인 경우 다음과 같은 부모 체인에 연결할 수 있습니다.
{
...
"parent" : {
"type" : " L2 " ,
"chain" : " eip155-1 " ,
"bridges" : [ { "url" : " https://bridge.arbitrum.io " } ]
}
}
유형 2와 기존 부모에 대한 참조를 지정 해야하는 경우. 다리의 필드는 선택 사항입니다.
status
필드 incubating
active
status
수 deprecated
.
모든 체인이 자동으로 조립 된 집계 된 JSON 파일도 있습니다.
ipfs get
통해 CID를 검색 할 수 있어야합니다.우리는 동일한 Chainid로 둘 이상의 체인을 허용 할 수 없습니다. 이것은 재생 공격을위한 문을 열어 줄 것입니다. 첫 번째 풀 요청은 ChainID를 할당합니다. 체인을 만들 때 우리는이 repo를 표시하는 EIP155를 읽을 것으로 기대할 수 있습니다. 체인이 다른 체인이 닫히는 것보다 더 낫다고 생각하기 때문에 모든 풀 요청이 체인을 교체하려고합니다. 체인을 재 할당하는 유일한 방법은 오래된 체인이 더 이상 사용되지 않을 때입니다. 이것은 수명이 짧은 테스트 넷에 사용될 수 있습니다. 그러나 당신은 여기에서 위험에 대해 경고하기 위해 클라이언트에 표시되어야하는 redflag "reusedchaiid"를 얻을 것입니다.
PR을 제출하기 전에 수표가 다음과 같이 통과했는지 확인하십시오.
$ ./gradlew run
BUILD SUCCESSFUL in 7s
9 actionable tasks: 9 executed
또한 여기에 정의 된 스타일에 따라 JSON을 포맷하기 위해 더 예쁘게 실행하십시오.
npx prettier --write _data/*/*.json
fauceth
놀이터를 으르렁 거립니다
스마트 계약 UI
귀하의 프로젝트 - 여기에 문의하십시오.