Blast is an Optimistic Layer 2 (OP Stack fork) with native rebasing yield: ETH balances on L2 auto-accrue Lido-derived staking yield, and the canonical stablecoin USDB rebases against MakerDAO-style T-bill yield. Mainnet chain ID 81457, gas token ETH, EVM-equivalent execution. Apps can opt accounts into 'Claimable' rather than 'Automatic' yield to keep balances static and pull rewards manually.
- 01yield-native consumer apps (savings, perps, social)
- 02products that want staking yield baked into ETH balance
- 03OP-Stack-equivalent EVM L2 with default 4–5% native APY
- 04USDB-denominated DeFi
- pnpm add viem wagmi
| Variable | Scope | Description |
|---|---|---|
| NEXT_PUBLIC_BLAST_RPC_URL | Client | Blast RPC URL (mainnet: https://rpc.blast.io). |
| NEXT_PUBLIC_BLAST_CHAIN_ID | Client | Chain ID — 81457 for mainnet, 168587773 for Blast Sepolia testnet. |
Use viem's built-in `blast` / `blastSepolia` chains (`import { blast } from 'viem/chains'`) — chain ID 81457, gas token ETH, RPC `https://rpc.blast.io`. Because Blast forks the OP Stack, Foundry/Hardhat workflows and bytecode are unchanged: `forge create --rpc-url $BLAST_RPC ...` deploys identically. The protocol distinguishes EOAs (default Automatic rebasing yield on ETH/USDB) from contracts (default Void / no yield). To opt a contract in, call `IBlast(0x4300000000000000000000000000000000000002).configureClaimableYield()` (or `configureAutomaticYield`) and `configureClaimableGas` for gas refunds. Withdraw earned yield via `claimYield` / `claimAllGas` on the `Blast` precompile. Bridge ETH/USDB via the canonical Blast Bridge (`blast.io/bridge`).
- ⚑Default contract behavior is 'Void' — a freshly deployed contract that holds ETH does NOT earn yield, and worse, the yield that would have accrued is lost to the protocol. Every contract that holds user balances must call `configureAutomaticYield` or `configureClaimableYield` in its constructor or it silently leaks yield.
- ⚑ETH and USDB balances rebase, which breaks any contract that assumes `balanceOf(this) == sum(deposits)` — invariant checks, AMM math, and accounting code from non-rebasing chains will silently drift. Use `configureClaimableYield` for predictable accounting and pull yield explicitly.
- ⚑Sequencer is centralized and operated by the Blast team — like other OP-Stack chains, force-inclusion via L1 exists but is the slow path. Plan for liveness incidents.
- ⚑Withdrawals to L1 use the standard 7-day OP-Stack challenge window. Build UX around the long withdrawal window or route fast exits through Across/Stargate/Orbiter at the cost of bridge fees.
- ⚑Native yield comes from external sources (Lido for ETH, MakerDAO/Sky T-bill protocols for USDB) — yield rates are not protocol-fixed and can move. Do not hardcode 4% / 5% in UI; read live rates from the `BlastPoints` / yield contracts.
- ⚑USDB is a Blast-native rebasing stable, NOT canonical Circle USDC. Token-route logic that assumes USDC will mismatch; for Circle USDC use the CCTP-bridged variant when available, otherwise route through a swap on-chain.