# onchain v0.7.0 - Table of Contents

> Shared Ethereum/blockchain library for read (eth_call) and write (transaction signing) operations using cartouche.

## Modules

- [Onchain](Onchain.md): Shared Ethereum/blockchain library providing read and write capabilities.
- [Onchain.AA](Onchain.AA.md): ERC-4337 Account Abstraction: UserOperation construction, hashing, signing,
and bundler JSON-RPC.
- [Onchain.AA.UserOperation](Onchain.AA.UserOperation.md): ERC-4337 UserOperation struct (unpacked representation).
- [Onchain.ABI](Onchain.ABI.md): ABI encoding/decoding for Ethereum contract calls.
- [Onchain.Address](Onchain.Address.md): Ethereum address validation, checksumming, and comparison.
- [Onchain.Block](Onchain.Block.md): Ethereum block fetching and timestamp-based block search.
- [Onchain.Contract](Onchain.Contract.md): Generic contract call: ABI encode → eth_call → ABI decode in one function.
- [Onchain.DEX.Router](Onchain.DEX.Router.md): Optimal DEX swap-path routing across liquidity pools (Uniswap v2/v3-style).
- [Onchain.DEX.Router.Pool](Onchain.DEX.Router.Pool.md): A single DEX liquidity pool descriptor consumed by `Onchain.DEX.Router`.
- [Onchain.DEX.Router.Route](Onchain.DEX.Router.Route.md): The result of an `Onchain.DEX.Router.route/5` query: the output-maximizing
path through a candidate pool set.
- [Onchain.Decimal](Onchain.Decimal.md): Decimal precision helpers for Ethereum token amounts.
- [Onchain.ENS](Onchain.ENS.md): ENS (Ethereum Name Service) resolution and namehash computation.
- [Onchain.ERC1155](Onchain.ERC1155.md): ERC-1155 (Multi Token) read operations.
- [Onchain.ERC20](Onchain.ERC20.md): ERC-20 token operations.
- [Onchain.ERC721](Onchain.ERC721.md): ERC-721 (NFT) read operations.
- [Onchain.ERC7730](Onchain.ERC7730.md): [ERC-7730](https://eips.ethereum.org/EIPS/eip-7730) clear-signing descriptors:
load a descriptor, bind it to a signing request, and render human-readable
display fields.
- [Onchain.ERC7730.Binding](Onchain.ERC7730.Binding.md): Binding evaluator for ERC-7730 descriptors.
- [Onchain.ERC7730.Descriptor](Onchain.ERC7730.Descriptor.md): Parsed, validated representation of an [ERC-7730](https://eips.ethereum.org/EIPS/eip-7730)
clear-signing descriptor.
- [Onchain.ERC7730.Formatter](Onchain.ERC7730.Formatter.md): Display-rule engine for ERC-7730 descriptors.
- [Onchain.Fees](Onchain.Fees.md): EIP-1559 fee suggestion math over `Cartouche.FeeHistory.t()`.
- [Onchain.Hex](Onchain.Hex.md): Hex encoding/decoding for Ethereum data.
- [Onchain.Log](Onchain.Log.md): Event log parsing for Ethereum contract events.
- [Onchain.MEV](Onchain.MEV.md): MEV protection via private transaction submission to Flashbots-style relays.
- [Onchain.Multicall](Onchain.Multicall.md): Multicall3 batched contract reads.
- [Onchain.RPC](Onchain.RPC.md): Ethereum JSON-RPC wrapper using cartouche's RPC client.
- [Onchain.RPC.Specs](Onchain.RPC.Specs.md): Compile-time lookup table for the vendored Ethereum OpenRPC method specs.

- [Onchain.Signer](Onchain.Signer.md): EIP-1559 transaction building, signing, encoding, and broadcasting.
- [Onchain.Sleuth](Onchain.Sleuth.md): Compound-style "deploy-as-call" primitive for arbitrary read-only logic
against live chain state.
- [Onchain.Subscription](Onchain.Subscription.md): Real-time Ethereum subscriptions via `eth_subscribe` over WebSocket.
- [Onchain.Transfer](Onchain.Transfer.md): Transfer event parser for ERC-20, ERC-721, and ERC-1155 token standards.
- [Onchain.Wallet](Onchain.Wallet.md): Thin convenience layer for wallet-level queries.

## Mix Tasks

- [mix onchain.scrape_erigon_methods](Mix.Tasks.Onchain.ScrapeErigonMethods.md): Scrapes Erigon trace/otterscan JSON-RPC methods from vendored Go source.

