System Architecture
Omni.fun is a hub-and-spoke architecture with Base as the home chain and 7 remote chains connected via LayerZero V2 messaging and Across Protocol bridging. Every cross-chain operation ultimately settles on Base, where the bonding curves and Uniswap V3 pools live.High-Level Topology
LayerZero Integration Points
Omni.fun uses LayerZero V2 through four distinct integration patterns. Each one uses_lzReceive() or lzCompose() as the entry point on Base.
1. Cross-Chain Buy (LZ OApp)
A user on any remote chain initiates a buy. The adapter encodes the buy parameters and sends an LZ message to CCBuyerV3 on Base.send(). The buyer receives tokens on their home chain — not on Base.
2. Cross-Chain Sell (LZ OApp + Across)
A user burns their OFT tokens on a remote chain. The LZ message triggers a sell on Base, and USDC returns via Across Protocol.3. Cross-Chain Launch (LZ OApp)
A user on BSC, Ethereum, or Solana launches a token that deploys on Base.4. OFT Factory Deployment (LZ OApp)
A single Base transaction deploys an OFTAdapter locally and sends LZ messages to 6 remote OFTFactoryRemote contracts, each of which CREATE2-deploys an OmniOFT.LZ Configuration
All Omni.fun OFT deployments use the following LayerZero V2 configuration:| Parameter | Value | Notes |
|---|---|---|
| LZ Endpoint V2 | 0x1a44076050125825900e736c501f859c50fE728c | Same on all EVM chains |
| ULN Confirmations | 10 | Increased from default 5 — required for cross-chain delivery |
| OFT Receive Gas | 65,000 | Enforced options on all OFT pairs |
| Message Type | 1 (SEND) | Standard OFT send |
| Peer Format | bytes32(uint256(uint160(address))) | Left-padded for EVM, raw 32 bytes for Solana |
| Solana Endpoint | 76y77prsiCMvXMjuoZ5VRrhG5qYBrUMYTE5WgHqgjEn6 | LZ Endpoint on Solana |
Cross-Chain Routing Summary
| Action | Protocol Used | LZ Message Type | Settlement |
|---|---|---|---|
| Buy from EVM (Across path) | Across Protocol | None (Across intent) | Tokens on Base |
| Buy from EVM (CC Buy path) | LayerZero V2 | _lzReceive() → OFT send() | Tokens on origin chain |
| Buy from Solana | LayerZero V2 | _lzReceive() → OFT send() | Tokens on Solana |
| Buy with native currency | Across Protocol | None (swap + Across) | Tokens on Base |
| Sell from EVM (compose) | LayerZero V2 | lzCompose() → Across | USDC on origin chain |
| Sell from EVM (LZ direct) | LayerZero V2 | _lzReceive() → Across | USDC on origin chain |
| Sell from Solana | LayerZero V2 | _lzReceive() → Across | USDC on Solana |
| Bridge OFT tokens | LayerZero V2 | OFT send() / lz_receive | Tokens on destination |
| Launch from EVM | LayerZero V2 | _lzReceive() | Token + Curve on Base |
| Launch from Solana | LayerZero V2 | _lzReceive() | Token + Curve on Base |
| Deploy OFTs (6 chains) | LayerZero V2 | 6× _lzReceive() | OmniOFT on each chain |