Mon-Pad Documentation

The complete reference: economics, fees, the bonding curve, graduation, buyback & burn, deployed contracts, and on-chain integration. Native MON on Monad mainnet (chainId 143).

USD figures are approximate (shown at ~$0.02/MON) and move with the MON price.

Creation fee
1 MON
≈ $10 · 50% off for MONSHI holders
Graduation target
20 MON
≈ $5,000 raised (net of fees)
Creator reward
10 MON
≈ $800 paid at graduation
Total supply
1,000,000,000
Fixed at mint · 18 decimals

How a launch works

1 · Create

Pay 1 MON (MONSHI holders pay half). 100 MON is seeded straight into your curve as real exit-liquidity buffer; the rest accrues to the treasury. A fresh ERC-20 + bonding-curve clone are deployed and a Launch event fires.

2 · Trade on the curve

Anyone buys/sells against the constant-product curve in native MON. Price rises as supply sells. No listing, no LP to seed — the curve is the market until graduation.

3 · Graduate

Once ~20 MON (net) has been raised, the token bonds: the creator is paid 10 MON (≈$800), the treasury takes 2 MON (≈$200).

4 · DEX + locked liquidity

All remaining raised MON + every unsold token seed a Uniswap V3 WMON/token pool, and the LP NFT is burned — liquidity is locked forever. The curve closes; trading continues on the DEX.

Supply & distribution

The entire 1,000,000,000 supply sits on the bonding curve — there is no pre-mine or team allocation. Tokens sell along the curve until the graduation target is hit; whatever is still unsold at that moment (plus all raised MON) becomes the locked DEX liquidity. The split isn't a fixed percentage — it falls out of the curve math, landing at roughly ~74% sold / ~26% to LP, so the DEX opens at about the curve's final price (no graduation pump-and-dump gap).

On the curve
100%
All 1B starts on the curve, sold for native MON
Sold by graduation
~74.5%
~745M tokens bought along the way
Into locked LP
~25.5%
~255M unsold tokens seed the DEX pool, LP burned

Fees & taxes

Every trade pays a fixed 2% base fee. On top of that, a creator can add an optional per-trade tax (0–10%) that funds their own token's buyback/burn and LP. The tax stacks on the base fee — it is not part of it.

Base fee (always)BuySell
Creator1%0.5%
Platform1% (buffer)1%
MONSHI buyback & burn0.5%
Total base2%2%

Optional creator tax (0–10%)

Charged on top of the 2% base, on both buys and sells, and routed to your token's buyback & burn and/or graduation LP. The first 2% of tax is yours in full; on any tax above 2%, 25% of that excess is skimmed to buy & burn MONSHI. Example — a 5% tax (3% burn / 2% LP) on a 100 MON buy: 2 MON base + 5 MON tax (93 MON buys tokens); of the 5 MON tax, 0.75 → MONSHI, ~2.55 → buyback-burn, ~1.70 → LP. Total cost to the trader: 7%.

What the creator earns

Trade fees, forever

You earn the creator slice of every buy (1%) and sell (0.5%) — on the curve and after graduation. Claimable any time (pull-pattern, so a non-receiving wallet can never brick trading).

10 MON at graduation

≈ $800 paid straight to you the moment your token bonds — on top of the fees you've already collected.

Buyback & burn

Route your dev fee and/or per-trade tax to automatically buy your token off its own curve and send it to the dead address — permanent, on-chain supply reduction (tracked as totalBurnedTokens).

Add to LP

Reserve part of your fee/tax to deepen the graduation liquidity pool — stronger floor, more trust.

Dev buy (optional): at launch you can buy up to 2% of supply fee-free to seed your own position. All of these are editable by the creator after launch.

Bonding-curve math

Constant-product (x·y=k) with virtual reserves, calibrated nad.fun-style so early buyers can't scoop the supply at near-zero cost:

k = (virtualMON + realMON) · effectiveTokenReserve

buy(ΔMON):  tokensOut = effTok − k / (virtualMON + realMON + ΔMON_net)
sell(ΔTOK): monOut    = (virtualMON + realMON) − k / (effTok + ΔTOK)

virtualMON          = 20 · 9/13 = 180,000 MON
virtualToken        = 1,260,000,000
totalSupply         = 1,000,000,000      (entire supply on the curve)
realMON (at launch) = 100 MON            (creation-fee buffer = instant exit liquidity)
graduationTarget    = 20 MON net of fees

priceX18 and post-trade reserves are emitted on every Trade, so price/marketcap are 100% on-chain derivable with no oracle. The flat 180,000 MON virtual reserve keeps the first ~$100 of buys to a small share of supply and opens the DEX at ≈ the curve's final price.

MONSHI integration

Holder discount

Hold ≥ 1,000,000 MONSHI and your creation fee is cut 50% (250 MON instead of 500). Read live on-chain via creationFeeFor(address).

Buyback & burn

0.5% of every sell, plus 25% of any creator tax above 2%, accrues to buy & burn MONSHI — every launch on the pad feeds the MONSHI ecosystem.

Deployed contracts

Live on Monad mainnet (chainId 143), source-verified. Per-token curve + token contracts are EIP-1167 minimal-proxy clones of the implementations below.

ContractAddressPurpose
Factory V30x45Fb501E13C70aaF Deploys a token + curve per launch, holds economics, emits Launch
Graduator V30xE27E3E0D2F58616b Migrates liquidity to a Uniswap V3 pool at graduation and burns the LP NFT
Curve (implementation)0xf5184f227EbaB623 Bonding-curve logic, cloned (EIP-1167) per token, emits Trade
Token (implementation)0x7B26281D98B3269e ERC-20, cloned per token (1B fixed supply)
WMON0x3bd359C11115433A Wrapped MON — quote token for the graduation DEX pool
Uniswap V3 NPM0x7197e214192f4e53 Position manager used to seed + lock graduation liquidity
MONSHI0xB744F5CD29af7777 Holder discount on creation fee + buyback-and-burn target

On-chain integration

There is no required indexer or API — the app reads everything directly from chain. For your own tooling (bots, scanners, DexScreener-style charts), watch these events:

EventFromUse
Launch(token, curve, creator, name, symbol, quoteToken, totalSupply, virtualMonReserve, virtualTokenReserve, createdAt)FactoryDiscover each new token + its curve clone
Trade(token, trader, isBuy, monAmount, tokenAmount, virtualMonReserve, virtualTokenReserve, realMonReserve, realTokenReserve, priceX18, tradedAt)CurveEvery buy/sell — price + volume fully derivable on-chain
Graduated(lpMon, creatorReward, treasuryCut)CurveToken bonded — liquidity migrated to the DEX pool
BuybackBurn(monIn, tokensBurned)CurveBuyback-and-burn of the project token executed

Reading live curve state (wagmi/viem + the ABIs in lib/abis/):

import { listV3Tokens, getV3Trades } from '@/lib/chainV3';

// All launches (newest first) straight from the factory
const tokens = await listV3Tokens(60);

// A token's trade history from its curve's Trade logs (no indexer)
const trades = await getV3Trades(curveAddress);

// Curve reserves / price for a token (read on the curve clone)
//   getCurveReserves() -> (virtualMon, virtualToken, realMon, realToken)
//   priceWeiPerToken(), progressBps(), creationFeeFor(address)

Security & governance

Locked liquidity

At graduation the LP NFT is burned — creators can never withdraw the pool. They only ever earn trading fees.

Timelock + 2-step ownership

Economic parameters change only through a 24h timelock; ownership transfers are 2-step (propose → accept). Pull-pattern payouts and reentrancy guards throughout.

Verified source

All contracts are source-verified on the Monad explorer — read every line from the address table above.

Anti-snipe curve

The 180,000 MON virtual reserve flattens the early curve so the first buyers can't corner supply cheaply — fairer launches.

Wallet setup

Add Monad Mainnet to your wallet with the params below, or one-click via your installed provider.

Chain ID143 (0x8f)
Network nameMonad Mainnet
RPC URLhttps://rpc.monad.xyz
Block explorerhttps://monadscan.com
CurrencyMON (18 decimals)

Support & community