Networks & metadata
ChainGate provides programmatic access to all supported networks and their metadata through the cg.networks collection. This is useful for dynamically building interfaces, validating inputs, or retrieving consistent information across multiple chains.
You can:
- Iterate over all supported networks
- Access detailed network metadata (name, symbol, decimals, address types, chain ID, etc.)
- Detect network type (EVM vs UTXO) via
instanceof - Create custom EVM networks via
cg.networks.evmRpc()— turn any Ethereum RPC endpoint into a first-class network
Quick example
import { ChainGate } from 'chaingate'
const cg = new ChainGate()
// Iterate all networks
for (const network of cg.networks) {
console.log(`${network.name} (${network.symbol}) — decimals: ${network.decimals}`)
}
// Direct access by name
const btc = cg.networks.bitcoin
console.log(btc.name) // 'Bitcoin'
console.log(btc.symbol) // 'BTC'
console.log(btc.decimals) // 8
console.log(btc.isTestnet) // false
Supported networks
ChainGate currently supports these networks (expanded regularly):
ChainGate offers three levels of blockchain support, each providing different capabilities:
Native support
Natively supported networks have dedicated API endpoints provided by ChainGate. This means you get rich, ready-to-use data that goes far beyond what a standard JSON-RPC node can provide: paginated transaction history, token balances (ERC-20/ERC-721/ERC-1155), NFT metadata, detailed network status, fee estimation, and more.
These networks are available as named properties on cg.networks and return a full-featured UtxoExplorer or EvmExplorer when passed to cg.explore().
| Network | Type | Symbol | Access |
|---|---|---|---|
| Bitcoin | UTXO | BTC | cg.networks.bitcoin |
| Litecoin | UTXO | LTC | cg.networks.litecoin |
| Dogecoin | UTXO | DOGE | cg.networks.dogecoin |
| Bitcoin Cash | UTXO | BCH | cg.networks.bitcoincash |
| Bitcoin Testnet | UTXO | tBTC | cg.networks.bitcointestnet |
| Ethereum | EVM | ETH | cg.networks.ethereum |
| Avalanche | EVM | AVAX | cg.networks.avalanche |
RPC support
ChainGate provides JSON-RPC proxy endpoints for 12 networks (Ethereum, Polygon, Arbitrum, Base, Avalanche, BNB Smart Chain, Sonic, Bitcoin, Litecoin, Dogecoin, Bitcoin Cash, and Bitcoin Testnet), all authenticated with your API key. Point cg.networks.evmRpc() at any EVM chain's RPC URL to get wallets, transfers, balances, fee estimation, and broadcasting out of the box. The only difference versus native support is that transaction history, token balance aggregation, and NFT metadata endpoints are not available on these chains.
All natively supported networks are also available via RPC. The additional EVM networks reachable through cg.networks.evmRpc() are:
| Network | Property | Chain ID |
|---|---|---|
| Sonic | cg.rpcUrls.sonic | 146 |
| Polygon | cg.rpcUrls.polygon | 137 |
| Arbitrum | cg.rpcUrls.arbitrum | 42161 |
| BNB Smart Chain | cg.rpcUrls.bnb | 56 |
| Base | cg.rpcUrls.base | 8453 |
const polygon = cg.networks.evmRpc({
rpcUrl: cg.rpcUrls.polygon,
chainId: 137,
name: 'Polygon',
symbol: 'POL',
})
const connector = cg.connect(polygon, wallet)
Global endpoint support
The Global explorer (cg.exploreGlobal()) provides cross-network market data, real-time network information, and logo URLs for 34 networks. This includes all natively and RPC-supported networks, plus many additional EVM chains. Use it for dashboards, portfolio views, or any UI that needs prices and network metadata — including comparing chains by price or gas fees — without performing on-chain operations.
| Network | Symbol | Network | Symbol |
|---|---|---|---|
| Bitcoin | BTC | Optimism | OP |
| Litecoin | LTC | Linea | LINEA |
| Dogecoin | DOGE | PulseChain | PLS |
| Bitcoin Cash | BCH | Blast | BLAST |
| Bitcoin Testnet | tBTC | Scroll | SCR |
| Ethereum | ETH | Gnosis Chain | GNO |
| Sonic | S | Unichain | UNI |
| Polygon | POL | opBNB | BNB |
| Arbitrum | ARB | Kava | KAVA |
| Avalanche | AVAX | Moonbeam | GLMR |
| BNB Chain | BNB | Taiko | TAIKO |
| Base | BASE | Chiliz | CHZ |
| Berachain | BERA | Evmos | EVMOS |
| Mantle | MNT | Moonriver | MOVR |
| Celo | CELO | Syscoin | SYS |
| Peaq | PEAQ | HAQQ | ISLM |
| Soneium | SON | Bahamut | FTN |
Custom EVM networks via RPC
You can interact with any EVM network by providing a JSON-RPC endpoint — bring your own node, point at a third-party provider, or reuse ChainGate's built-in proxies:
const bsc = cg.networks.evmRpc({
rpcUrl: 'https://bsc-dataseed.binance.org',
chainId: 56,
name: 'BNB Smart Chain',
symbol: 'BNB',
})
// Or use ChainGate's built-in RPC proxy
const polygon = cg.networks.evmRpc({
rpcUrl: cg.rpcUrls.polygon,
chainId: 137,
name: 'Polygon',
symbol: 'POL',
})
const connector = cg.connect(polygon, wallet)
Key points
- Uniform structure: Every network exposes consistent metadata for UI and logic.
- Type-safe:
cg.networksprovides strong typing and autocompletion in TypeScript. - Named + iterable: Access networks by name (
cg.networks.bitcoin) or iterate withfor...of. - Custom EVM support: Use
cg.networks.evmRpc()to connect to any EVM chain via JSON-RPC. - Display-ready: Use
name,symbol,decimals, andnativeTokento render clean UIs.