Preview
Flow
1
Approve Gateway to spend USDC
The user grants an ERC-20 allowance so Gateway can move USDC on their
behalf.
2
Deposit on source chain
USDC is deposited into the Gateway contract on the chain where the user
currently holds funds.
3
Unified balance updates
The dashboard reflects the new unified USDC balance in real time through
Supabase Realtime.
4
Sign EIP-712 burn intent
The user signs a typed-data message authorizing Gateway to burn USDC on the
source chain.
5
Gateway issues attestation
Gateway verifies the burn and produces an attestation that authorizes
minting on the destination chain.
6
Mint USDC on destination chain
Gateway mints the equivalent USDC amount on the destination chain,
completing the crosschain transfer.
Tech stack
- Next.js and Supabase for the dashboard and user accounts
- Circle Gateway for the unified USDC balance and crosschain transfers
- Circle developer-controlled wallets for server-side wallet operations
- Wagmi and Viem for wallet connection and EIP-712 signing
- Supported testnets: Arc Testnet, Base Sepolia, Avalanche Fuji
- Supabase Realtime for live deposit and transfer status