Skip to main content

EVM Components

White Rabbit ships 22 EVM components covering the full lifecycle of on-chain operations across any EVM-compatible chain (Ethereum, Polygon, Arbitrum, Base, Avalanche, etc.).

All EVM components accept a jsonRpcUrl where applicable — pass any standard JSON-RPC endpoint (Alchemy, Infura, your own node).


Categories

GroupComponentsPage
TransactionsBUILD_CALLDATA, BUILD, SIGN, BROADCAST, WAITTransactions →
Wallets & AddressesCOMPUTE_ADDRESS, GET_DERIVATION_PATH, GET_BALANCE, GET_CHAIN_IDWallets & Addresses →
Gnosis SafeDEPLOYMENT, NONCE, ADDRESS, IS_DEPLOYED, SIGNATURE, SAFE_TX, OWNERS, MULTICALLGnosis Safe →
DeFiUNISWAP_QUOTE, UNISWAP_SWAP_TXDeFi →
Read & DecodeREAD_CONTRACT, DECODE_RESULT, KECCAK256Read & Decode →

Typical EVM workflow

GET_EVM_DERIVATION_PATH


COMPUTE_PUBLIC_KEY ──▶ COMPUTE_EVM_ADDRESS


BUILD_EVM_TRANSACTION


SIGN_WITH_KEY_SHARE ──▶ SIGN_EVM_TRANSACTION


BROADCAST_EVM_TRANSACTION


WAIT_FOR_EVM_TRANSACTION

Connecting to any chain

All components that interact with on-chain state take a jsonRpcUrl as input. You can pass this as a workspace environment variable or directly as a STRING_CONSTANT.

STRING_CONSTANT ("https://eth-mainnet.g.alchemy.com/v2/KEY")

▼ jsonRpcUrl
BUILD_EVM_TRANSACTION
Avoid public RPC endpoints

White Rabbit components run on shared infrastructure — all workspaces share the same outbound IP pool. Public RPC URLs (such as https://eth.llamarpc.com or https://rpc.ankr.com/eth) enforce rate limits per IP address. Under concurrent load, shared-IP traffic can exceed these limits and cause intermittent errors, even with our load balancer in place.

Always use a private RPC endpoint from a provider such as Alchemy, Infura, or QuickNode, or point to a self-hosted node.

Supported chains (non-exhaustive):

ChainExample RPC
Ethereum Mainnethttps://eth-mainnet.g.alchemy.com/v2/KEY
Ethereum Sepoliahttps://eth-sepolia.g.alchemy.com/v2/KEY
Polygonhttps://polygon-mainnet.g.alchemy.com/v2/KEY
Arbitrum Onehttps://arb-mainnet.g.alchemy.com/v2/KEY
Basehttps://base-mainnet.g.alchemy.com/v2/KEY
Optimismhttps://opt-mainnet.g.alchemy.com/v2/KEY
Avalanchehttps://avax-mainnet.infura.io/v3/KEY