How it works
The steps of a launch, from the token to the pools.
A launch is one call to launchDrop on DropLaunchpad. The call either does all of the steps below, or it reverts and
does none of them.
Deploy the token
The launchpad calls the token deployer that the launch selects. The deployer creates the token and mints the full supply of 1,000,000,000 tokens to the launchpad. See Tokens.
The token address is deterministic. It depends on the caller of launchDrop and the salt, so you can
predict it before the launch.
Plan the pools
The launch has 1 to 5 pool requests. Each request has a quote, a share of the supply, and a start tick. The launchpad checks the requests and calculates one single-sided position for each pool. See Pools.
The launchpad stores the drop:
| Field | Value |
|---|---|
creatorFeeRecipient | From the launch parameters |
partnerId | From the launch parameters |
creator | The caller of launchDrop |
launchedAt | The block timestamp of the launch |
Create the pools
The launchpad unlocks the Uniswap v4 PoolManager. In the unlock callback, it:
- Initializes each pool at its start price. Only the launchpad can initialize pools with
DropHook. - Adds the pool's position. The position holds only the token, from the start price up.
- Pays the full supply to
PoolManageronce, for all pools. Rounding makes the positions take slightly less than the supply. The small remainder stays inPoolManagerforever, so no tokens stay with the launchpad or the creator. - If the launch has a dev buy, it buys from the main pool for the dev buy recipient.
The dev buy happens in the same transaction as pool creation. Nobody can trade in the pools before it.
After the launch
The pools are standard Uniswap v4 pools. Anyone can swap in them with any v4 router.
- Nobody can remove the liquidity or add more. See Trust model.
- Swaps pay the partner's LP fee. The launchpad collects the fees and splits them between the partner and the creator fee recipient. See Fees.
- Each fee recipient can move its share to a new address. Nothing else about a drop can change.