Skip to content

Latest commit

 

History

History
292 lines (246 loc) · 22.6 KB

File metadata and controls

292 lines (246 loc) · 22.6 KB
title Component Catalog
sidebar_label Component Catalog
sidebar_position 0
description Complete catalog of all 130+ Nethereum packages organized by use case

Component Catalog

Nethereum provides 130+ packages covering the full Ethereum development stack. This page helps you find the right package for your use case.

Quick Start by Use Case

I want to... Packages
Basics
Send ETH and interact with contracts Nethereum.Web3
Work with ERC-20, ERC-721, or ERC-1155 tokens Nethereum.Web3 (includes typed contract services for all major standards)
Signing & Key Management
Sign transactions offline Nethereum.Web3 + Nethereum.Accounts
Use an HD wallet (BIP32/BIP39) Nethereum.HDWallet
Sign with Trezor or Ledger Nethereum.Signer.Trezor or Nethereum.Signer.Ledger
Sign with AWS KMS or Azure Key Vault Nethereum.Signer.AWSKeyManagement or Nethereum.Signer.AzureKeyVault
Sign EIP-712 typed data Nethereum.Signer.EIP712
Local Development
Run a local dev chain (no external node) Nethereum.DevChain.Server
Simulate EVM execution in-process Nethereum.EVM
Preview transaction state changes before signing Nethereum.Wallet + Nethereum.EVM
Spin up a full dev environment with Aspire dotnet new nethereum-devchain
Build a full-stack dApp with Blazor and Solidity dotnet new nethereum-dapp
Code Generation
Generate C# contract services from Solidity ABI Nethereum.Generator.Console (CLI) or VS Code Solidity extension
Generate UI components from contract definitions Nethereum.Generator.Console (CLI) or VS Code Solidity extension
Generate MUD table services and queries Nethereum.Generator.Console (CLI) or VS Code Solidity extension
Data & Indexing
Crawl blocks, transactions, and event logs Nethereum.BlockchainProcessing
Index blockchain data to PostgreSQL/SqlServer/SQLite Nethereum.BlockchainProcessing + store provider
Index ERC-20/721/1155 token transfers and balances Nethereum.BlockchainStorage.Token.Postgres
Build a blockchain explorer Nethereum.Explorer
Debug EVM execution in a browser UI Nethereum.Explorer (EVM debugger)
Scan thousands of known tokens against a wallet via multicall (no indexer) Nethereum.TokenServices
Get token balances with CoinGecko prices Nethereum.TokenServices
Fetch ABI from Sourcify or Etherscan with automatic fallback Nethereum.DataServices
Discover RPC endpoints and chain metadata from Chainlist Nethereum.DataServices
Query gas prices, account transactions from Etherscan Nethereum.DataServices
Get token prices and metadata from CoinGecko Nethereum.DataServices
Store Sourcify data locally in PostgreSQL Nethereum.Sourcify.Database
DeFi & Protocols
Swap tokens on Uniswap (V2/V3/V4) Nethereum.Uniswap
Use Permit2 for gasless token approvals Nethereum.Uniswap (includes Permit2)
Accept crypto payments in my API (x402) Nethereum.X402
Resolve ENS names Nethereum.Contracts (includes ENS)
Implement Sign-In with Ethereum Nethereum.Siwe
Use Gnosis Safe multi-sig Nethereum.GnosisSafe
Account Abstraction
Use smart accounts (ERC-4337 UserOps) Nethereum.AccountAbstraction
Build an ERC-4337 bundler Nethereum.AccountAbstraction.Bundler
Run a bundler RPC server Nethereum.AccountAbstraction.Bundler.RpcServer
Deploy ERC-7579 modular smart accounts Nethereum.AccountAbstraction
MUD (Autonomous Worlds)
Understand MUD and generate C# code Nethereum.Mud + Nethereum.Mud.Contracts
Work with MUD table records and queries Nethereum.Mud + Nethereum.Mud.Contracts
Index MUD Store events to PostgreSQL Nethereum.Mud.Repositories.Postgres
Deploy a MUD World with tables and systems Nethereum.Mud.Contracts
Wallet SDK
Build a multi-platform wallet app Nethereum.Wallet + UI.Components + renderer (.Blazor / .Maui)
Web (Blazor) dApp Integration
Integrate browser wallets in Blazor (EIP-6963) Nethereum.Blazor
Connect via WalletConnect / Reown Nethereum.WalletConnect or Nethereum.Reown.AppKit.Blazor
Interact with any contract dynamically (no codegen) Nethereum.Blazor
Unity
Build a Unity game with Ethereum Nethereum.UnityQuickstart guide
Connect browser wallets in WebGL Nethereum.Unity.EIP6963Wallets guide
Deploy and interact with contracts in Unity Nethereum.UnitySmart Contracts guide
Verification & Cryptography
Verify ETH balances without trusting RPC Nethereum.ChainStateVerification + Nethereum.Consensus.LightClient
Track finalized beacon headers Nethereum.Consensus.LightClient + Nethereum.Signer.Bls.Herumi
Verify storage proofs and contract code Nethereum.ChainStateVerification
Calculate Merkle proofs and state roots Nethereum.Merkle + Nethereum.Merkle.Patricia
Infrastructure
Launch a sequencer and deploy contracts Nethereum.AppChain.Server (Preview)
Configure RocksDB persistent storage Nethereum.CoreChain.RocksDB (Preview)
Sync follower nodes and verify state Nethereum.AppChain.Sync (Preview)
Use System.Text.Json / AOT-friendly RPC Nethereum.JsonRpc.SystemTextJsonRpcClient
Stream real-time data via WebSocket subscriptions Nethereum.JsonRpc.WebSocketStreamingClient

All Packages by Category

Core Foundation

Package Description
Nethereum.Web3 High-level entry point aggregating RPC, contracts, accounts, and signing
Nethereum.ABI ABI encoding/decoding for functions, events, errors, and complex types
Nethereum.Contracts Smart contract interaction: deployment, calls, events, multicall, typed services (ERC-20/721/1155/ENS)
Nethereum.Accounts Account types, transaction managers, and nonce management
Nethereum.Model Block headers, transaction types (Legacy through EIP-7702), RLP encoding
Nethereum.Hex Hex types and conversion utilities
Nethereum.RLP Recursive Length Prefix encoding/decoding
Nethereum.Util Keccak-256, unit conversion, address checksumming, Poseidon hasher
Nethereum.RPC Typed wrappers for eth_*, web3_*, net_*, debug_* RPC methods

JSON-RPC Transport

Package Description
Nethereum.JsonRpc.Client Base RPC client abstractions and interceptor pipeline
Nethereum.JsonRpc.RpcClient HTTP JSON-RPC client (Newtonsoft.Json)
Nethereum.JsonRpc.SystemTextJsonRpcClient HTTP JSON-RPC client (System.Text.Json, AOT-friendly)
Nethereum.JsonRpc.IpcClient IPC client (Windows named pipes, Unix domain sockets)
Nethereum.JsonRpc.WebSocketClient WebSocket JSON-RPC client
Nethereum.JsonRpc.WebSocketStreamingClient Streaming WebSocket for eth_subscribe / eth_unsubscribe

Signing & Key Management

Package Description
Nethereum.Signer ECDSA signing for all transaction types
Nethereum.Signer.EIP712 EIP-712 typed structured data signing
Nethereum.KeyStore Web3 Secret Storage (keystore files) encryption/decryption
Nethereum.HDWallet BIP32/BIP39/BIP44 HD wallet derivation
Nethereum.Signer.Ledger Ledger hardware wallet signing
Nethereum.Signer.Trezor Trezor hardware wallet signing
Nethereum.Signer.AWSKeyManagement AWS KMS-based signing
Nethereum.Signer.AzureKeyVault Azure Key Vault-based signing

Protocols

Package Description
Nethereum.ENS Ethereum Name Service: resolution, registration, reverse lookup
Nethereum.GnosisSafe Safe multi-signature wallet interaction
Nethereum.Siwe.Core SIWE core models, message parsing, and RECAP capabilities (EIP-4361/EIP-5573)
Nethereum.Siwe Sign-In with Ethereum — session management, signature verification, NFT gating
Nethereum.Circles Circles UBI protocol
Nethereum.GSN Gas Station Network meta-transaction relay

DeFi

Package Description
Nethereum.Uniswap Uniswap DEX (V2/V3/V4) + Permit2
Nethereum.X402 HTTP 402 Payment Required protocol for pay-per-request APIs

EVM Simulator

Package Description
Nethereum.EVM Full EVM simulator: all opcodes through Prague, tracing, debugging

DevChain

Package Description
Nethereum.CoreChain Full in-process node: RPC handlers, state management, block production, WebSocket subscriptions
Nethereum.CoreChain.RocksDB RocksDB persistent storage
Nethereum.DevChain Development chain: pre-funded accounts, auto-mine, SQLite, time manipulation
Nethereum.DevChain.Server HTTP server for DevChain (MetaMask/Foundry/Hardhat compatible)

Aspire Templates

Template / Resource Description
nethereum-devchain Aspire template: DevChain + Indexer + Explorer + PostgreSQL in one command
nethereum-dapp Aspire template: full-stack dApp with Blazor WebApp, Foundry contracts, C# codegen, EIP-6963 wallet
Solidity → C# codegen End-to-end code generation from Forge-compiled Solidity to typed C# services
EIP-6963 wallet integration Browser wallet connection in Blazor with chain validation and switching
Explorer ABI discovery Automatic contract ABI resolution from Foundry build artifacts

Account Abstraction (ERC-4337 / ERC-7579)

Package Description
Nethereum.AccountAbstraction UserOperation creation, encoding, gas estimation, validation
Nethereum.AccountAbstraction.Bundler Full bundler: mempool, reputation, BLS aggregation, bundle submission
Nethereum.AccountAbstraction.Bundler.RpcServer Bundler JSON-RPC server
Nethereum.AccountAbstraction.SimpleAccount SimpleAccount factory interaction

Data Processing & Storage

Package Description
Nethereum.BlockchainProcessing Block/transaction/log crawling pipeline with progress tracking and reorg detection
Nethereum.BlockchainStore.EFCore EF Core storage abstraction: entity models, repository interfaces, reorg handling
Nethereum.BlockchainStore.Postgres PostgreSQL storage provider
Nethereum.BlockchainStore.SqlServer SQL Server storage provider
Nethereum.BlockchainStore.Sqlite SQLite storage provider
Nethereum.BlockchainStorage.Processors Hosted services for continuous indexing with retry and chain validation
Nethereum.BlockchainStorage.Token.Postgres ERC-20/721/1155 transfer indexing, balance aggregation, NFT inventory
Nethereum.Explorer Blazor Server blockchain explorer with ABI decoding, token pages, EVM debugger, MUD browser
Nethereum.DataServices Etherscan, Sourcify, CoinGecko, 4Byte, Chainlist API clients + composite ABI retrieval
Nethereum.Sourcify.Database Local Sourcify storage in PostgreSQL (EF Core)
Nethereum.TokenServices Token portfolio: multicall balances over known token lists, CoinGecko pricing, multi-account scanning

MUD Framework

Package Description
Nethereum.Mud Table schemas, record encoding/decoding, repositories, predicate queries
Nethereum.Mud.Contracts World/Store contract services, Store event processing, table/system registration
Nethereum.Mud.Repositories.EntityFramework EF Core repository for MUD records
Nethereum.Mud.Repositories.Postgres PostgreSQL storage with schema normalisation

Wallet SDK

Package Description
Nethereum.UI Abstract IEthereumHostProvider, SIWE authenticator, validation helpers
Nethereum.Wallet Core wallet: accounts, vaults, chain config, HD wallets, dApp management
Nethereum.Wallet.RpcRequests EIP-1193 JSON-RPC handlers
Nethereum.Wallet.UI.Components Cross-platform MVVM ViewModels
Nethereum.Wallet.UI.Components.Trezor Trezor hardware wallet ViewModels
Nethereum.Wallet.UI.Components.Blazor Blazor/MudBlazor renderer
Nethereum.Wallet.UI.Components.Blazor.Trezor Blazor Trezor components
Nethereum.Wallet.UI.Components.Maui .NET MAUI renderer
Nethereum.Maui.AndroidUsb Android USB for Ledger/Trezor on MAUI

Web (Blazor) dApp Integration

Package Description
Nethereum.Blazor EIP-6963 wallet discovery, auth state, dynamic contract interaction
Nethereum.EIP6963WalletInterop EIP-6963 JavaScript interop core
Nethereum.Metamask MetaMask wallet provider
Nethereum.Metamask.Blazor MetaMask Blazor interop component
Nethereum.WalletConnect WalletConnect v2 protocol
Nethereum.Reown.AppKit.Blazor Reown AppKit modal for Blazor
Nethereum.Blazor.Solidity In-browser Solidity step-through debugger

Unity

Package Description
Nethereum.Unity Unity game engine integration
Nethereum.Unity.EIP6963 EIP-6963 wallet discovery for Unity WebGL
Nethereum.Unity.Metamask MetaMask integration for Unity WebGL

AppChains (Preview)

Package Description
Nethereum.AppChain Core chain abstraction, genesis, IAppChain interface
Nethereum.AppChain.Server HTTP/WS JSON-RPC server (CLI tool)
Nethereum.AppChain.Sequencer Block production, transaction ordering, AppChainBuilder
Nethereum.AppChain.Sync Multi-peer sync, batch import, finality tracking
Nethereum.AppChain.P2P P2P security: reputation, rate limiting, authentication
Nethereum.AppChain.P2P.DotNetty DotNetty transport implementation
Nethereum.AppChain.P2P.Server Complete P2P node with Clique PoA
Nethereum.AppChain.Policy Governance, access control, merkle authorization
Nethereum.AppChain.Anchoring L1 state root commitment and verification
Nethereum.Consensus.Clique Clique Proof-of-Authority consensus engine

Consensus & Cryptography

Package Description
Nethereum.Merkle Merkle tree implementations (standard, incremental, frontier)
Nethereum.Merkle.Patricia Modified Merkle Patricia Trie
Nethereum.Ssz Simple Serialize (SSZ) encoding
Nethereum.Signer.Bls.Herumi BLS signatures via Herumi

Consensus Light Client

Package Description
Nethereum.Consensus.LightClient Beacon chain light client: sync committee tracking, header verification, finality proofs
Nethereum.ChainStateVerification Verified state queries: account balances, storage proofs, contract code without trusting RPC
Nethereum.Beaconchain Beacon Chain REST API client
Nethereum.Consensus.Ssz Consensus-layer SSZ type serialization
Nethereum.SSZ Simple Serialize (SSZ) encoding

Client Extensions

Package Description
Nethereum.Geth Geth-specific RPC methods
Nethereum.Besu Hyperledger Besu-specific RPC methods

Supported Platforms

Target Scope
netstandard 2.0, net451, net461, net6.0, net8.0, net9.0, net10.0 Core libraries
net8.0, net10.0 CoreChain, AppChain, Server components
net6.0--net10.0 Blazor UI
net461, net472, netstandard 2.1 Unity

Individual package READMEs with full API documentation are available in each section of the sidebar, alongside the relevant guides and overviews.