web3_universal_chains 0.1.0+1 copy "web3_universal_chains: ^0.1.0+1" to clipboard
web3_universal_chains: ^0.1.0+1 copied to clipboard

Chain configurations and metadata for Web3 Universal SDK. Includes pre-configured settings for Ethereum, Polygon, BSC, and more.

dart_web3_chains #

License: MIT

A comprehensive network registry for EVM-compatible blockchains. This package provides metadata, RPC configurations, and contract addresses for dozens of networks.

πŸš€ Features #

  • Standardized Metadata: Access chain IDs, currency symbols, and explorer URLs.
  • Multi-Chain Support: Pre-configured data for Ethereum, Polygon, BSC, Avalanche, Base, etc.
  • Advanced Features Settings: Built-in flags for EIP-1559 and Blob support per network.
  • Customizable: Create and register custom private or devnet configurations effortlessly.

Usage Flow #

sequenceDiagram
    participant D as Developer
    participant R as ChainRegistry
    participant C as ChainConfig
    D->>R: getByChainId(1)
    R->>C: lookup metadata
    C-->>D: Ethereum Mainnet Config

πŸ—οΈ Architecture #

graph TD
    Registry[ChainRegistry] --> Categories[Network Groups]
    Categories --> Mainnets[Production Chains]
    Categories --> Testnets[Testing Chains]
    
    subgraph Data [Metadata Nodes]
        Chain[ChainConfig]
        RPC[RpcUrl]
        Contracts[Well-known Contracts]
    end
    
    Mainnets --> Data

πŸ“š Technical Reference #

Core Classes #

Class Responsibility
Chain The primary object containing all metadata for a network.
Chains A static collection of production-ready chain configurations.
Currency Describes native tokens (name, symbol, decimals).
40: BlockExplorer

πŸ›‘οΈ Security Considerations #

  • ChainID Validation: Always verify the chainId returned by the RPC matches the ChainConfig to prevent replay attacks on unintended networks.
  • RPC Privacy: Use the rpcUrls provided as a starting point, but encourage users to provide their own private RPC keys for production apps to avoid rate limiting and metadata tracking.

πŸ’» Usage #

Querying Network Metadata #

import 'package:dart_web3_chains/dart_web3_chains.dart';

void main() {
  final chain = Chains.arbitrum;
  
  print('Network: ${chain.name}');
  print('Native Asset: ${chain.nativeCurrency.symbol}');
  print('Supports EIP-1559: ${chain.features.supportsEIP1559}');
}

πŸ“¦ Installation #

dependencies:
  dart_web3_chains: ^0.1.0
0
likes
160
points
2
downloads

Publisher

unverified uploader

Weekly Downloads

Chain configurations and metadata for Web3 Universal SDK. Includes pre-configured settings for Ethereum, Polygon, BSC, and more.

Homepage
Repository (GitHub)
View/report issues

Topics

#web3 #ethereum #networks

Documentation

API reference

License

MIT (license)

Dependencies

web3_universal_core

More

Packages that depend on web3_universal_chains