ข้อมูลต้นฉบับอยู่ใน _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 "
}]
}
เมื่อใช้ไอคอนในเครือข่ายหรือ Explorer จะต้องมี JSON ใน _data/ไอคอนที่มีชื่อที่ใช้ (เช่นในตัวอย่างข้างต้นจะต้องมี 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
ฟิลด์ status
incubating
active
deprecated
นอกจากนี้ยังมีไฟล์ JSON รวมกับโซ่ทั้งหมดที่ประกอบโดยอัตโนมัติ:
ipfs get
- ไม่เพียง แต่ผ่านเกตเวย์บางอย่าง (หมายถึงโปรดอย่าใช้ Pinata ในตอนนี้)เราไม่สามารถอนุญาตให้มากกว่าหนึ่งโซ่ที่มี chainid เดียวกัน - สิ่งนี้จะเปิดประตูสู่การโจมตีซ้ำ คำขอดึงครั้งแรกได้รับการกำหนด chainid เมื่อสร้างห่วงโซ่เราสามารถคาดหวังได้ว่าคุณอ่าน EIP155 ซึ่งระบุ repo นี้ คำขอดึงทั้งหมดพยายามแทนที่ chainid เพราะพวกเขาคิดว่าห่วงโซ่ของพวกเขาดีกว่าที่อื่น ๆ จะถูกปิด วิธีเดียวที่จะได้รับการมอบหมายโซ่ใหม่คือเมื่อโซ่เก่าได้รับการเลิกจ้าง สิ่งนี้สามารถใช้สำหรับ testnets ที่มีอายุสั้น แต่คุณจะได้รับ Redflag "Reusedchaiid" ที่ควรแสดงในลูกค้าเพื่อเตือนพวกเขาเกี่ยวกับอันตรายที่นี่
ก่อนส่ง PR โปรดตรวจสอบว่าเช็คผ่านด้วย:
$ ./gradlew run
BUILD SUCCESSFUL in 7s
9 actionable tasks: 9 executed
นอกจากนี้โปรดเรียกใช้ Prettier เพื่อจัดรูปแบบ JSON ของคุณตามสไตล์ที่กำหนดไว้ที่นี่เช่น Run
npx prettier --write _data/*/*.json
ฟาเรนไท์
Sourcify Playground
Smart Contract UI
โครงการของคุณ - ติดต่อเราเพื่อเพิ่มที่นี่!