How Stonk Pad works
A no-bullshit launchpad: fixed-supply tokens, instant Uniswap V3 liquidity, LP locked forever, and LP fees split 50/50. No bonding curve, no protocol skim, no rug vectors.
What it is
Stonk Pad deploys a standard ERC-20 with a fixed 100,000,000 supply, opens a Uniswap V3 pool for it, seeds one-sided liquidity, and locks the LP position permanently — all in one transaction. You are the deployer; you sign it and pay the gas. There is no owner key on the token, no mint, no pause, no proxy.
How a launch works
A single factory.launch() call does all of this atomically:
- Deploys a LaunchToken (100M supply) via CREATE2.
- Creates & initializes the Uniswap V3 pool at the correct starting price, then re-reads the pool price and reverts if it doesn't match — killing pre-initialization griefing.
- Mints a one-sided LP position (token only, no ETH needed from you).
- Transfers the LP NFT into the LpFeeVault, encoding you as the deployer.
- Sends your dev allocation (0–5%) to your dev wallet.
If a CREATE2 salt collides, that one launch reverts and the app just retries with a fresh salt.
The contracts
Minimal OpenZeppelin ERC-20. Full supply minted once to the factory at deploy. No admin, no mint, no burn, no pause, no upgradeability. All tokens share identical bytecode.
The launch entry point. Validates inputs (dev allocation 0–5%), deploys the token, bootstraps the V3 pool with a post-init price check, mints and locks the LP, and forwards the dev allocation.
Permanent LP vault. Once an NFT enters it never leaves — no withdraw, no sweep, no decreaseLiquidity. collectFees(tokenId) is permissionless and splits fees 50/50 to the deployer and protocol wallet. Protected by a ReentrancyGuard.
Security
- LP is locked forever. No path exists to withdraw or reduce the locked liquidity.
- Fees can't be stolen. Collection is permissionless but the caller receives nothing — funds only ever go to the registered deployer + protocol wallet.
- Reentrancy-guarded collection with a balance-diff accounting pattern.
- Pre-init griefing blocked by verifying the pool price after initialization.
- Verified & bytecode-matched. Because every token is the same contract, verifying one auto-verifies them all on the explorer.
Collecting fees
Trading the pool accrues standard 1% Uniswap V3 LP fees. Anyone can trigger a collection from My Launches (or the vault directly); the split is enforced on-chain — 50% to the token's dev wallet, 50% to the protocol wallet. The caller only pays gas and receives nothing extra.
The bots
A self-hostable, DM-only Telegram bot. You DM it, it walks you through name, symbol, dev wallet and allocation, then fires the same one-tap launch from a burner gas wallet. Bring your own bot token.
A self-hostable tool you point at a specific token contract. It watches the chain over raw RPC and posts every buy to your group — amount, buyer, market cap, and a GIF — in real time. Read-only; no keys, no middleman. Bring your own bot token and RPC.
Chains & addresses
The build currently targets Sepolia. Flip NEXT_PUBLIC_CHAIN to retarget.
| Chain | ID | Explorer |
|---|---|---|
| Sepolia | 11155111 | Etherscan |
| Robinhood Chain | 4663 | Blockscout |
| Robinhood Testnet | 46630 | Blockscout |
FAQ
No. The LP NFT is locked in a vault with no withdraw or decreaseLiquidity function. It is mathematically impossible to pull the liquidity.
You do. It's non-custodial — your connected wallet signs factory.launch() and is recorded as the deployer.
Fixed 100,000,000 tokens. The pool uses Uniswap V3's 1% fee tier, split 50/50 between the dev wallet and protocol.
No — the Telegram launchpad bot can launch the exact same contracts straight from a DM.