BaseLaunchRouter
The one entry point for a launch: creates the coin through the factory and lands the creator's opening buy in the same transaction, optionally in holders mode, with a launch interface and a trade referrer.
Launches a token and lands the creator's opening buy in the same transaction, so the creator is always the first buyer and no bot can trade between the launch and that buy. Optionally launches in holders mode, where a fresh holders distributor becomes the creator fee recipient for good. The router is the launch factory's trusted forwarder: the factory records the router's caller as the launch's deployer, never the router itself. It has no owner, keeps no state and holds no funds between transactions: whatever quote the curve does not take, and any ETH left over, goes back to the caller before the call returns.
Part of the contract reference.
Deployed at
Read functions (3)
| Function | What it does |
|---|---|
distributorFactorydistributorFactory() view returns (address)selector 0xb04b2ed6Anyone | The holders distributor factory used for launches in holders mode. Its launch factory must equal factory, checked at deployment. |
factoryfactory() view returns (address)selector 0xc45a0155Anyone | The launch factory this router launches through as its trusted launch forwarder. |
registryregistry() view returns (address)selector 0x7b103999Anyone | Where each launch's interface is recorded. This router is the only account the registry accepts. |
Write functions (2)
| Function | What it does |
|---|---|
launchlaunch(TokenParams params, uint256 launchConfigId, address pairToken, address[] snipeTaxExemptions, uint256 buyAmount, uint256 minTokensOut, bool holders, address interface_, address referrer) payable returns (address token, address curve, uint256 tokensOut, address distributor)selector 0x393b008dAnyone while launches are open, otherwise a whitelisted launcher (the coin is launched for the caller) | Launches a token for the caller and buys For a native launch |
receivereceive() payableAnyone | Accepts the refund a clamped native opening buy sends back; launch passes every leftover wei on to the caller before it returns. |
Events (1)
| Event | What it means |
|---|---|
LaunchedWithBuyLaunchedWithBuy(address indexed token, address indexed curve, address indexed creator, address pairToken, uint256 buyAmount, uint256 tokensOut, address distributor, address interface_, address referrer)topic0 0xebd4e7a7e653be8f420d90a4e85c32c0b35671fb1469006490e1203db211f2c6 | A launch through the router finished: coin, curve, creator (the caller), pair asset, opening buy spent and coins received, the holders distributor (zero when not in holders mode), the launch interface and the referrer (zero when there was no opening buy). Emitted by launch |
Structs
| Struct | Fields, in ABI order |
|---|---|
Socials | string twitter, string telegram, string discord, string website, string farcaster |
TokenParams | string name, string symbol, string logo, string description, Socials socials, address creatorFeeRecipient, uint16 creatorTaxBps, bool buybackEnabled, bytes32 expectedEconomics, bytes32 salt |
Addresses are listed for launcher 2.1.0, where new coins launch, and for launcher 2.0, which keeps serving the coins launched before the cutover. A coin stays on the set that launched it. The functions and events are the 2.1.0 contracts'; the 2.0 contracts are an earlier version of the same code and have no interface registry, so check a 2.0 contract's verified source on Basescan before relying on a detail listed here.