SpiceFlowProvider
The root provider that wraps your application. Manages wallet connections, chain configuration, theming, and execution mode.Usage
Props
Examples
SpiceDeposit
The main deposit flow. Handles everything: Privy login, external wallet connection, token selection, escrow deposit, 7702 signing, and solver execution. This is the primary component most apps will use.Usage
Props
depositBatches
ThedepositBatches prop defines what happens on the destination chain after the deposit. It can be a static array or an async function that returns batches based on the deposit amount:
SpiceWithdraw
Withdraw assets from the user’s Spice balance back to their wallet. Users select from their deposited tokens and receive the same token on the same chain.Usage
Props
SpiceLockModal
Lock tokens for a duration (veToken style). Supports cross chain deposits into the lock. The app provides duration options and the lock batches.Usage
Props
AccountDisplay
A popover that shows the user’s Spice balance breakdown, pending deposits, and quick actions for deposit/withdraw. Great for header navigation.Usage
Props
SpiceBalance
A balance dashboard card that shows the user’s deposited assets. Usually used within a larger page layout rather than as a standalone modal.Usage
Props
AirdropModal
Request testnet tokens for development and testing.Usage
ProviderLogin
Wallet connection button that adapts to your selected provider (Privy or Dynamic).Usage
Props
ExportWalletButton
Lets users export their Privy embedded wallet private key.Next Steps
Hooks
Build custom UIs with React hooks
Styling
Customize component appearance
Configuration
Configure chains and providers
Examples
See complete examples
