What problem does it solve? dApp frontends commonly ship broken UX because wallet connection and transactions are treated as simple buttons and spinners instead of multi-state machines, leaving users confused by silent failures, cryptic gas numbers, and unhandled rejections. ## Core Features & Use Cases - Wallet Connection State Machine: Implements the four-state connection flow (disconnected, connecting, connected, wrong-network) using RainbowKit, wagmi v2, and EIP-6963 multi-wallet discovery, with mobile support via WalletConnect v2. - Four-State Transaction Lifecycle: Provides complete transaction components covering idle, awaiting-signature, pending, and confirmed/failed states, with silent handling of user rejection (error 4001) and decoded contract revert messages. - Gas, Approvals, and QA Checklists: Converts gas costs to USD display, implements exact vs infinite ERC-20 approval patterns with Permit2 support, and ships production QA checklists covering accessibility, mobile, and error handling. - Use Case: A developer building a token transfer page on Base can use the included starter template to get wallet connection, chain switching, a full transaction form with explorer links, and proper error decoding without writing the state logic from scratch. ## Quick Start Ask the agent to build a dApp page with RainbowKit wallet connection and a four-state transaction form for an ERC-20 transfer using wagmi and viem.