diff --git a/README.md b/README.md index 548abb7eb..9541a3577 100644 --- a/README.md +++ b/README.md @@ -134,11 +134,16 @@ You can set all the above using url params and access any setup with a deeplink: - install node.js >= 16 and yarn - run `yarn` to install dependencies -- run `yarn chainlist:update` to update chain list sources -- run `yarn explorer:update` to update block explorer list -- run `yarn chainlist` to build final chain list - run `yarn dev` to start locally +**Update** + +Running `yarn update` executes the following: + +- `yarn chainlist:update` to update chain list sources +- `yarn explorer` to update block explorer list (this may take ~3-5min) +- `yarn chainlist` to build final chain list + **Customize** - update `config/app.js` and `public/manifest.json` diff --git a/config/chainIds.json b/config/chainIds.json index ad170da97..2db78b269 100644 --- a/config/chainIds.json +++ b/config/chainIds.json @@ -115,7 +115,6 @@ 4328, 2300, 2151, - 3637, 3636, 12123, 963, @@ -204,6 +203,8 @@ 1004, 20, 21, + 52014, + 5201420, 990, 99099, 7027, @@ -372,6 +373,7 @@ 212, 8848, 10201, + 29548, 333000333, 222000222, 985, @@ -411,6 +413,8 @@ 201804, 5551, 5553, + 399, + 333333, 22222, 88002, 91002, @@ -436,7 +440,6 @@ 248, 800001, 39815, - 195, 65, 66, 1246, @@ -468,6 +471,7 @@ 11297108109, 11297108099, 3601, + 3602, 3400, 3500, 789, @@ -476,7 +480,6 @@ 20201022, 9779, 424, - 144, 13381, 30067, 6626, @@ -513,7 +516,6 @@ 10946, 10947, 81720, - 12890, 20181205, 110001, 110002, @@ -567,7 +569,6 @@ 534352, 534351, 34, - 3434, 186, 3699, 3698, @@ -611,7 +612,6 @@ 57, 5700, 88888888, - 167005, 841, 842, 22023, @@ -683,6 +683,7 @@ 8888, 51, 50, + 195, 2415, 37, 520, diff --git a/config/chainlist b/config/chainlist index 0c3e03670..1d7c4df13 160000 --- a/config/chainlist +++ b/config/chainlist @@ -1 +1 @@ -Subproject commit 0c3e036709609ffb8816b83e17d22645cf72d5e9 +Subproject commit 1d7c4df138d2b974ce551e6ef7d3b31c9a111f0e diff --git a/config/chains.json b/config/chains.json index 2cc71bf85..f2a63e308 100644 --- a/config/chains.json +++ b/config/chains.json @@ -2938,29 +2938,6 @@ ], "shortName": "boa" }, - { - "name": "Botanix Mainnet", - "rpc": [ - "https://rpc.btxtestchain.com" - ], - "faucets": [ - "https://faucet.btxtestchain.com" - ], - "nativeCurrency": { - "name": "Botanix", - "symbol": "BTC", - "decimals": 18 - }, - "chainId": 3637, - "explorers": [ - { - "name": "Botanix", - "url": "https://btxtestchain.com", - "standard": "EIP3091" - } - ], - "shortName": "BTCm" - }, { "name": "Botanix Testnet", "rpc": [ @@ -3302,13 +3279,6 @@ "url": "https://explorer.cascadia.foundation", "standard": "none", "icon": "cascadia" - }, - { - "name": "Cascadia Cosmos Explorer", - "url": "https://validator.cascadia.foundation", - "standard": "none", - "icon": "cascadia", - "iframe": true } ], "shortName": "cascadia" @@ -5051,6 +5021,52 @@ ], "shortName": "esct" }, + { + "name": "Electroneum Mainnet", + "rpc": [ + "https://api.electroneum.com" + ], + "faucets": [], + "nativeCurrency": { + "name": "Electroneum", + "symbol": "ETN", + "decimals": 18 + }, + "chainId": 52014, + "explorers": [ + { + "name": "blockscout", + "url": "https://blockexplorer.electroneum.com", + "icon": "electroneum", + "standard": "EIP3091", + "iframe": true + } + ], + "shortName": "etn-mainnet" + }, + { + "name": "Electroneum Testnet", + "rpc": [ + "https://api.electroneum.com" + ], + "faucets": [], + "nativeCurrency": { + "name": "Electroneum", + "symbol": "ETN", + "decimals": 18 + }, + "chainId": 5201420, + "explorers": [ + { + "name": "blockscout", + "url": "https://blockexplorer.thesecurityteam.rocks", + "icon": "electroneum", + "standard": "EIP3091", + "iframe": true + } + ], + "shortName": "etn-testnet" + }, { "name": "eLiberty Mainnet", "rpc": [ @@ -9144,6 +9160,28 @@ ], "shortName": "PWR" }, + { + "name": "MCH Verse Mainnet", + "rpc": [ + "https://rpc.oasys.mycryptoheroes.net" + ], + "faucets": [], + "nativeCurrency": { + "name": "OAS", + "symbol": "OAS", + "decimals": 18 + }, + "chainId": 29548, + "explorers": [ + { + "name": "MCH Verse Explorer", + "url": "https://explorer.oasys.mycryptoheroes.net", + "standard": "EIP3091", + "iframe": true + } + ], + "shortName": "MCHV" + }, { "name": "Meld Mainnet", "rpc": [ @@ -10041,6 +10079,52 @@ ], "shortName": "NahmiiTestnet" }, + { + "name": "Nativ3 Mainnet", + "rpc": [ + "https://rpc.nativ3.network", + "wss://ws.nativ3.network" + ], + "faucets": [], + "nativeCurrency": { + "name": "USNT", + "symbol": "USNT", + "decimals": 18 + }, + "chainId": 399, + "explorers": [ + { + "name": "N3scan", + "url": "https://scan.nativ3.network", + "standard": "EIP3091", + "iframe": true + } + ], + "shortName": "N3" + }, + { + "name": "Nativ3 Testnet", + "rpc": [ + "https://rpctest.nativ3.network", + "wss://wstest.nativ3.network" + ], + "faucets": [], + "nativeCurrency": { + "name": "USNT", + "symbol": "USNT", + "decimals": 18 + }, + "chainId": 333333, + "explorers": [ + { + "name": "Nativ3 Test Explorer", + "url": "https://scantest.nativ3.network", + "standard": "EIP3091", + "iframe": true + } + ], + "shortName": "N3-Test" + }, { "name": "Nautilus Mainnet", "rpc": [ @@ -10497,7 +10581,8 @@ { "name": "Oasis Emerald Testnet Explorer", "url": "https://testnet.explorer.emerald.oasis.dev", - "standard": "EIP3091" + "standard": "EIP3091", + "iframe": true } ], "shortName": "emerald-testnet" @@ -10643,29 +10728,6 @@ ], "shortName": "oho" }, - { - "name": "OKBChain Testnet", - "rpc": [ - "https://okbtestrpc.okbchain.org" - ], - "faucets": [ - "https://www.oklink.com/okbc-test" - ], - "nativeCurrency": { - "name": "OKBChain Global Utility Token in testnet", - "symbol": "OKB", - "decimals": 18 - }, - "chainId": 195, - "explorers": [ - { - "name": "OKLink", - "url": "https://www.oklink.com/okbc-test", - "standard": "EIP3091" - } - ], - "shortName": "tokb" - }, { "name": "OKExChain Testnet", "rpc": [ @@ -11403,6 +11465,28 @@ ], "shortName": "pando-mainnet" }, + { + "name": "PandoProject Testnet", + "rpc": [ + "https://testnet.ethrpc.pandoproject.org/rpc" + ], + "faucets": [], + "nativeCurrency": { + "name": "pando-token", + "symbol": "PTX", + "decimals": 18 + }, + "chainId": 3602, + "explorers": [ + { + "name": "Pando Testnet Explorer", + "url": "https://testnet.explorer.pandoproject.org", + "standard": "none", + "iframe": true + } + ], + "shortName": "pando-testnet" + }, { "name": "Paribu Net Mainnet", "rpc": [ @@ -11589,29 +11673,6 @@ ], "shortName": "PGN" }, - { - "name": "PHI Network v2", - "rpc": [ - "https://connect.phi.network" - ], - "faucets": [], - "nativeCurrency": { - "name": "PHI", - "symbol": "Φ", - "decimals": 18 - }, - "chainId": 144, - "explorers": [ - { - "name": "Phiscan", - "url": "https://phiscan.com", - "icon": "phi", - "standard": "none", - "iframe": true - } - ], - "shortName": "PHI" - }, { "name": "Phoenix Mainnet", "rpc": [ @@ -12481,28 +12542,6 @@ ], "shortName": "qnet" }, - { - "name": "Quantum Chain Testnet", - "rpc": [ - "https://testnet-rpc.quantumscan.org" - ], - "faucets": [], - "nativeCurrency": { - "name": "Quantum Chain", - "symbol": "tQNET", - "decimals": 18 - }, - "chainId": 12890, - "explorers": [ - { - "name": "Quantum Scan Testnet", - "url": "https://testnet.quantumscan.org", - "standard": "EIP3091", - "iframe": true - } - ], - "shortName": "tqnet" - }, { "name": "quarkblockchain", "rpc": [ @@ -13752,29 +13791,6 @@ ], "shortName": "scai" }, - { - "name": "SecureChain Testnet", - "rpc": [ - "https://testnet-rpc.securechain.ai" - ], - "faucets": [ - "https://faucet.securechain.ai" - ], - "nativeCurrency": { - "name": "SCAI", - "symbol": "SCAI", - "decimals": 18 - }, - "chainId": 3434, - "explorers": [ - { - "name": "SecureChain", - "url": "https://testnet.securechain.ai", - "standard": "EIP3091" - } - ], - "shortName": "SCAIt" - }, { "name": "Seele Mainnet", "rpc": [ @@ -14803,28 +14819,6 @@ ], "shortName": "team" }, - { - "name": "Taiko Grimsvotn L2", - "rpc": [ - "https://rpc.test.taiko.xyz" - ], - "faucets": [], - "nativeCurrency": { - "name": "Ether", - "symbol": "ETH", - "decimals": 18 - }, - "chainId": 167005, - "explorers": [ - { - "name": "blockscout", - "url": "https://explorer.test.taiko.xyz", - "standard": "EIP3091", - "iframe": true - } - ], - "shortName": "taiko-l2" - }, { "name": "Taraxa Mainnet", "rpc": [ @@ -15608,8 +15602,7 @@ "name": "TTcoin Smart Chain Explorer", "url": "https://tscscan.com", "standard": "EIP3091", - "icon": "tscscan", - "iframe": true + "icon": "tscscan" } ], "shortName": "tc" @@ -16476,6 +16469,29 @@ ], "shortName": "xdc" }, + { + "name": "Xgon Testnet", + "rpc": [ + "https://testrpc.xgon.io" + ], + "faucets": [ + "https://www.oklink.com/okbc-test" + ], + "nativeCurrency": { + "name": "Xgon Global Utility Token in testnet", + "symbol": "OKB", + "decimals": 18 + }, + "chainId": 195, + "explorers": [ + { + "name": "OKLink", + "url": "https://www.oklink.com/okbc-test", + "standard": "EIP3091" + } + ], + "shortName": "tokb" + }, { "name": "XODEX", "rpc": [ diff --git a/config/explorers.json b/config/explorers.json index 1bf526dd3..9fbd5ff3b 100644 --- a/config/explorers.json +++ b/config/explorers.json @@ -743,15 +743,6 @@ "iframe": true } ], - "144": [ - { - "name": "Phiscan", - "url": "https://phiscan.com", - "icon": "phi", - "standard": "none", - "iframe": true - } - ], "148": [ { "name": "explorer", @@ -1325,6 +1316,14 @@ "iframe": true } ], + "399": [ + { + "name": "N3scan", + "url": "https://scan.nativ3.network", + "standard": "EIP3091", + "iframe": true + } + ], "401": [ { "name": "OZONE Scan", @@ -2780,13 +2779,6 @@ "iframe": true } ], - "3434": [ - { - "name": "SecureChain", - "url": "https://testnet.securechain.ai", - "standard": "EIP3091" - } - ], "3500": [ { "name": "Paribu Net Testnet Explorer", @@ -2811,17 +2803,18 @@ "iframe": true } ], - "3636": [ + "3602": [ { - "name": "3xpl", - "url": "https://3xpl.com/botanix", - "standard": "EIP3091" + "name": "Pando Testnet Explorer", + "url": "https://testnet.explorer.pandoproject.org", + "standard": "none", + "iframe": true } ], - "3637": [ + "3636": [ { - "name": "Botanix", - "url": "https://btxtestchain.com", + "name": "3xpl", + "url": "https://3xpl.com/botanix", "standard": "EIP3091" } ], @@ -3210,13 +3203,6 @@ "url": "https://explorer.cascadia.foundation", "standard": "none", "icon": "cascadia" - }, - { - "name": "Cascadia Cosmos Explorer", - "url": "https://validator.cascadia.foundation", - "standard": "none", - "icon": "cascadia", - "iframe": true } ], "6118": [ @@ -3913,14 +3899,6 @@ "iframe": true } ], - "12890": [ - { - "name": "Quantum Scan Testnet", - "url": "https://testnet.quantumscan.org", - "standard": "EIP3091", - "iframe": true - } - ], "13308": [ { "name": "Creditscan", @@ -4201,6 +4179,14 @@ "iframe": true } ], + "29548": [ + { + "name": "MCH Verse Explorer", + "url": "https://explorer.oasys.mycryptoheroes.net", + "standard": "EIP3091", + "iframe": true + } + ], "30067": [ { "name": "Piece Scan", @@ -4404,7 +4390,8 @@ { "name": "Oasis Emerald Testnet Explorer", "url": "https://testnet.explorer.emerald.oasis.dev", - "standard": "EIP3091" + "standard": "EIP3091", + "iframe": true } ], "42262": [ @@ -4515,6 +4502,15 @@ "standard": "EIP3091" } ], + "52014": [ + { + "name": "blockscout", + "url": "https://blockexplorer.electroneum.com", + "icon": "electroneum", + "standard": "EIP3091", + "iframe": true + } + ], "54211": [ { "name": "TestEdge HAQQ Explorer", @@ -5066,14 +5062,6 @@ "iframe": true } ], - "167005": [ - { - "name": "blockscout", - "url": "https://explorer.test.taiko.xyz", - "standard": "EIP3091", - "iframe": true - } - ], "188710": [ { "name": "Bitica DPOS Blockchain Explorer", @@ -5227,8 +5215,7 @@ "name": "TTcoin Smart Chain Explorer", "url": "https://tscscan.com", "standard": "EIP3091", - "icon": "tscscan", - "iframe": true + "icon": "tscscan" } ], "333331": [ @@ -5240,6 +5227,14 @@ "iframe": true } ], + "333333": [ + { + "name": "Nativ3 Test Explorer", + "url": "https://scantest.nativ3.network", + "standard": "EIP3091", + "iframe": true + } + ], "333666": [ { "name": "blockscout", @@ -5589,6 +5584,15 @@ "standard": "EIP3091" } ], + "5201420": [ + { + "name": "blockscout", + "url": "https://blockexplorer.thesecurityteam.rocks", + "icon": "electroneum", + "standard": "EIP3091", + "iframe": true + } + ], "5555555": [ { "name": "Imversed EVM explorer (Blockscout)", diff --git a/config/rpcs.json b/config/rpcs.json index a990ccf51..5581a0f9e 100644 --- a/config/rpcs.json +++ b/config/rpcs.json @@ -83,7 +83,6 @@ "137": "https://polygon-rpc.com/", "138": "https://rpc.public-0138.defi-oracle.io", "139": "https://rpc.woop.ai/rpc", - "144": "https://connect.phi.network", "148": "https://json-rpc.evm.shimmer.network", "150": "https://rpc-evm.fivenet.sixprotocol.net", "155": "https://rpc.testnet.tenet.org", @@ -96,7 +95,7 @@ "188": "https://mainnet.bmcchain.com/", "189": "https://testnet.bmcchain.com", "193": "https://cemchain.com", - "195": "https://okbtestrpc.okbchain.org", + "195": "https://testrpc.xgon.io", "197": "https://testnet-rpc.neutrinoschain.com", "198": "https://rpc.bitchain.biz/", "199": "https://rpc.bittorrentchain.io/", @@ -143,6 +142,7 @@ "365": "https://eth-rpc-api-testnet.thetatoken.org/rpc", "369": "https://rpc.pulsechain.com", "371": "https://rpc-testnet.theconsta.com", + "399": "https://rpc.nativ3.network", "401": "https://node1.testnet.ozonechain.io", "416": "https://rpc.sx.technology", "418": "https://rpc.testnet.lachain.network", @@ -319,12 +319,11 @@ "3333": "https://testnet.web3q.io:8545", "3334": "https://galileo.web3q.io:8545", "3400": "https://rpc.paribu.network", - "3434": "https://testnet-rpc.securechain.ai", "3500": "https://rpc.testnet.paribuscan.com", "3501": "https://rpc.jfinchain.com", "3601": "https://eth-rpc-api.pandoproject.org/rpc", + "3602": "https://testnet.ethrpc.pandoproject.org/rpc", "3636": "https://node.botanixlabs.dev", - "3637": "https://rpc.btxtestchain.com", "3639": "https://rpc.ichainscan.com", "3666": "https://rpc.jnsdao.com:8503", "3693": "https://rpc.empirenetwork.io", @@ -450,7 +449,6 @@ "12123": "https://rpc.brcchain.io", "12306": "https://node1.fibo-api.asia", "12345": "https://rpc.testnet.step.network", - "12890": "https://testnet-rpc.quantumscan.org", "13308": "https://rpc.creditsmartchain.com", "13337": "https://subnets.avax.network/beam/testnet/rpc", "13381": "https://rpc.phoenixplorer.com/", @@ -485,6 +483,7 @@ "26026": "http://testnet.dev.svcs.ferrumnetwork.io:9933", "26863": "https://rpc1.oasischain.io", "28528": "https://alpha-1-replica-0.bedrock-goerli.optimism.io", + "29548": "https://rpc.oasys.mycryptoheroes.net", "30067": "https://testnet-rpc0.piecenetwork.com", "30103": "https://cerium-rpc.canxium.net", "31223": "https://mainnet-rpc.cloudtx.finance", @@ -521,6 +520,7 @@ "50021": "https://testnet.gton.network/", "51178": "https://alpha-us-http-geth.lumoz.org", "51712": "https://mainnet-rpc.sardisnetwork.com", + "52014": "https://api.electroneum.com", "54211": "https://rpc.eth.testedge2.haqq.network", "54321": "http://testnet.toronet.org/rpc", "55004": "https://rpc.titan.tokamak.network", @@ -585,7 +585,6 @@ "111111": "https://rpc.main.siberium.net", "112358": "https://rpc.metachain.one", "123456": "https://devnet.adilchain-rpc.io", - "167005": "https://rpc.test.taiko.xyz", "188710": "https://mainnet-rpc.biticablockchain.com/", "200101": "https://rpc-devnet-cardano-evm.c1.milkomeda.com", "200202": "https://rpc-devnet-algorand-rollup.a1.milkomeda.com", @@ -603,6 +602,7 @@ "314159": "https://api.calibration.node.glif.io/rpc/v1", "330844": "https://mainnet-rpc.tscscan.com", "333331": "https://test.rpc.avescoin.io", + "333333": "https://rpctest.nativ3.network", "333666": "https://rpc.testnet.oonechain.com", "333777": "https://rpc.dev.oonechain.com", "355113": "https://testnet.bitfinity.network", @@ -645,6 +645,7 @@ "3441005": "https://manta-testnet.calderachain.xyz/http", "4000003": "https://zero.alt.technology", "5167003": "https://wannsee-rpc.mxc.com", + "5201420": "https://api.electroneum.com", "5555555": "https://jsonrpc.imversed.network", "7225878": "https://rpc.saakuru.network", "7777777": "https://rpc.zora.energy/", diff --git a/package.json b/package.json index 8d4a51ca2..ab4fb6f3b 100644 --- a/package.json +++ b/package.json @@ -36,12 +36,14 @@ "use-immer": "^0.6.0" }, "scripts": { + "postinstall": "git submodule update --init --remote", "dev": "yarn chainlist && (local-ssl-proxy --source 3443 --target 3000) & next", "build": "next build && next export", "start": "next start", "chainlist": "node scripts/buildChainList", - "chainlist:update": "git submodule update --init --remote && yarn chainlist", - "explorer:update": "node scripts/getExplorerInfo" + "chainlist:update": "git submodule update && yarn chainlist", + "explorer": "node scripts/getExplorerInfo && yarn chainlist", + "update": "yarn chainlist:update && yarn explorer" }, "devDependencies": { "@types/md5": "^2.3.1", diff --git a/scripts/getExplorerInfo.js b/scripts/getExplorerInfo.js index 56beef867..6f822ef58 100644 --- a/scripts/getExplorerInfo.js +++ b/scripts/getExplorerInfo.js @@ -8,6 +8,7 @@ const BATCH_TIMEOUT = 10; const CALL_TIMEOUT = 15; const main = async () => { + const startTime = Date.now(); const rawChains = []; const folderPath = path.resolve( __dirname, @@ -113,6 +114,12 @@ const main = async () => { __dirname + "/../config/explorers.json", JSON.stringify(explorers, null, 2) ); + + console.log( + `\n>> Finished probing ${fileNames.length} explorer urls, time elapsed = ${ + (Date.now() - startTime) / 1000 + } seconds.` + ); }; main();