Protocol Design
Open token launches on Uniswap v4. Creators open a Continuous Clearing Auction (CCA); after graduation, proceeds seed a locked v4 pool. This repo adds a hook-based fee split on top of Uniswap’s Liquidity Launchpad.
Mechanics
Launches use Uniswap’s CCA: bidders set a budget and max price; each block, a release schedule allocates tokens to active bids at a uniform clearing price. Early participation is rewarded and last-minute sniping is ineffective — see the CCA overview and whitepaper.
Flow in this stack:
- Launch —
CcaLaunchFactorymints a fixed-supply UniswapUERC20(with required X verification inextraData) and opens a CCA via LiquidityLauncher → LBPStrategy. - Bid — Anyone can
submitBid. There is no invite gate. - Migrate — After the auction ends, anyone can call LBP
migrateto seed an ETH/token v4 pool at the discovered price, withLaunchFeeHookattached. - Trade & claim — Swaps accrue hook fees;
harvestpushes balances toFeeDistributorfor creator / platform claims. Auction winners claim tokens after the configured claim block.
Concepts
| Concept | What it covers |
|---|---|
| Fees | Auction/LP split, hook fee, 95/5 claims |
| How does distribution work | Distributor NFTs (currently unused for fees) |
| Verified creators | Why launches require a public creator identity, and how the proof is stored in UERC20 extraData |
| Invite codes | Invites are not live; auctions are open |
API Reference
| Contract | Role |
|---|---|
CcaLaunchFactory |
Create UERC20 + CCA/LBP launch (requires extraData X verification) |
InviteRegistry |
Unused invite registry (later referrals) |
InviteValidationHook |
Unused CCA bid gate |
ReferrerNFT |
Transferable distributor NFT (no fee share yet) |
LaunchFeeHook |
Post-migrate swap hook fee |
FeeDistributor |
Claimable 95/5 fee split |
IReferralSource |
NFT tier-weight interface |
Upstream Uniswap pieces used at runtime (not in this repo’s src/): LiquidityLauncher, LBPStrategy, Continuous Clearing Auction, CompoundingClaimRecipient, UERC20Factory / UERC20.