how ACT works
ACT is a launchpad on arc, the L1 from circle where the gas token is usdc. that changes one thing about launchpads: there is no volatile base asset. you put dollars in, you take dollars out, and the market cap on the card is the market cap. no "in sol terms".
the curve
every coin has a fixed supply of 1,000,000,000 tokens and trades on a constant product bonding curve with virtual reserves. nothing is pre-minted to anyone: the factory holds all tokens and sells them along the curve.
| virtual usdc | 4,000 | the curve behaves as if 4,000 usdc were already in it, so the first buy is not free |
|---|---|---|
| virtual tokens | 1,073,000,000 | slightly more than supply, which puts the opening price at about $0.0000037 (mcap ≈ $3.7k) |
| sellable on curve | 800,000,000 | hard cap on how many tokens the curve will ever sell |
| graduation | 7,350 usdc raised | which is a market cap of about $30,000 |
with k = 4,000 × 1,073,000,000:
buy: tokensOut = tokenReserve − k / (quoteReserve + usdcIn)sell: usdcOut = quoteReserve − k / (tokenReserve + tokensIn)
rounding always favours the curve. the contract and the site use the same integer math (src/curve.js mirrors contracts/ACT.sol), so the quote you see is the quote you get, minus whatever slippage other people's trades in the same block cause. on arc a block is under a second and final on inclusion, so that is rare.
fees
| launch fee | 1 usdc | paid once, to the platform |
|---|---|---|
| platform fee | 1% | of the usdc side of every buy and sell on the curve |
| creator tax | 0 to 3% | chosen at launch, paid straight to the creator's wallet on every trade, in usdc, in the same transaction. not claimable, not vested, just sent. |
fees come off the top. if you buy with 100 usdc on a coin with a 1% creator tax, 98 usdc goes into the curve, 1 to the platform and 1 to the creator.
graduation
the buy that pushes the curve past 7,350 usdc raised graduates the coin in the same transaction. the curve closes and three things happen at once:
- the 7,350 usdc and exactly enough of the unsold tokens to match the curve's closing price become a full range uniswap v4 position (native usdc / token, 0.3% fee, no hooks). the position nft is minted to
0xdead, so nobody can pull that liquidity, including us. - the rest of the unsold supply is burned to
0xdead. with the default numbers that is roughly 245 million tokens into the pool and 60 million burned, so the pool opens at the price the curve closed at instead of gapping down. - trading moves to uniswap. the coin page links straight to the pool.
uniswap v4 is live on arc mainnet (PositionManager 0x6049…f82B). on arc testnet there is no v4 deployment yet, so graduated coins there have their usdc and tokens vaulted inside the factory until the owner runs migrate(). the coin page says which state it is in.
the board
- trending: volume in the last hour and day, buyers in the last hour, holders, all decayed by age so a coin that is 10 minutes old can top it.
- new: newest first. oldest: the survivors.
- graduating: past 35% of the curve, sorted by how close they are.
- graduated: hit $30k. trading on the pool.
- king of the hill: the live coin closest to graduating. contenders: the next four.
wallets and arc
any evm wallet works. click connect and the site adds arc for you (chain id 5042, rpc https://rpc.mainnet.arc.io). usdc is the native balance, so you do not need a second token for gas. bridge usdc in from any chain with circle's bridge, or use the faucet on testnet.
when the site runs in demo mode (gold pill in the header) there is no chain: simulated traders trade a seeded board and you can pick a demo wallet with 1,000 play usdc. everything works the same, nothing is real. the live site shows the network name in the pill instead.
contract
ACTFactory creates ACTTokens (plain erc20, 18 decimals) and holds every curve. functions you will call: create(name, symbol, uri, creatorTaxBps, minTokensOut) payable, buy(token, minTokensOut) payable, sell(token, tokensIn, minUsdcOut) after an approve, claim() for parked payouts. events: Created, Trade, Graduated, Owed. every trade is reentrancy locked. the site indexes those over plain eth_getLogs, no explorer api, so it keeps working when explorers go down.
faq
can the creator dump? only what they bought, at the same price everyone else got. there is no allocation.
what about the tokens that are never sold on the curve? about 245 million go into the pool with the usdc, which is what gives the pool depth, and about 60 million are burned. none of them are ever sent to a wallet.
what if a creator's wallet cannot receive usdc? payouts that fail are parked in owed[] on the factory and can be pulled with claim(). trading never depends on a payout succeeding, so a creator cannot brick their own coin.
why $30k? small enough that a few hundred people can graduate a coin, big enough that a pool with 7,350 usdc has real depth.
is this financial advice? no. coins here are made by anonymous people on the internet. the curve is fair. the people are not.