Launchpad
The launchpad turns a mint into an ordered list of phases. Each phase is a mechanic + a gate + a price + an allocation. You compose them in the studio; holders mint through one seamless flow.
Phase mechanics¶
| Mechanic | What the minter does |
|---|---|
| Clean | Pays and mints a new token. |
| Burn-to-upgrade | Burns owned token(s) to receive upgraded version(s). |
| Burn-to-mint | Burns a token from one collection to mint from another. |
| Claim | Claims an entitled token (allowlist / airdrop), usually free. |
Gates¶
| Gate | Who can mint |
|---|---|
| Public | Anyone. |
| Allowlist | Only listed wallets, each up to their maxQty. |
| Holders | Only wallets holding a configured collection. |
Composing a launch¶
Phases run top to bottom. A phase opens when the one before it sells out or its window closes. Two common shapes:
flowchart LR
subgraph Fresh collection
A[Allowlist · clean] --> B[Public · clean]
end
subgraph Upgrade drop
C[Burn-to-upgrade · holders] --> D[Allowlist · clean] --> E[Public · clean]
end
Build it in studio → Launchpad: add a phase, pick mechanic + gate, set price and allocation, drag to reorder, upload an allowlist if gated. Changes persist and take effect on the next phase transition.
Tip
Preview the whole builder locally without touching your data — open the
launchpad with ?mock=1 in a dev environment to click through every
modal against in-memory state.
Why it won't oversell¶
Each phase allocation is enforced with an atomic reservation: a slot is
claimed in a single database operation before any on-chain action, and released
if the mint fails. Under a thundering-herd launch, exactly allocation tokens
mint — no double-mints, no oversell, no manual reconciliation.
After mint out¶
Once every phase completes you can unfreeze the collection so it trades on secondary marketplaces — and your sales feed starts posting sales and listings automatically.