Overview
TheBondingCurve contract is the trading engine for every Makx token. Each token gets its own bonding curve — a minimal proxy clone (EIP-1167) initialized by the factory. It controls buying and selling before graduation, then automatically migrates liquidity to Uniswap V4 when all tokens are sold.
Deployment Addresses
Implementation contract (clones are created per-token by LaunchFactory):| Network | Address |
|---|---|
| Ethereum | Coming soon |
| Base | Coming soon |
| BNB Chain | Coming soon |
| Sepolia | Coming soon |
Curve Mathematics
Uses a constant-product AMM (pump.fun style) with virtual reserves:virtualEth and virtualTokens are set by the factory and define the initial price floor. Only salePercentBps of the total supply is available on the curve; the rest is reserved for the Uniswap LP.
Math is implemented in CurveLib.
Write Functions
buy
buy
feeRecipient), calculates output via constant product, transfers tokens to recipient. Auto-graduates if tokensSold >= maxTokensForSale after the buy. Excess ETH is refunded if the buy would overshoot the graduation limit.sell
sell
feeRecipient. Not callable after graduation.graduate
graduate
View Functions
Key State
Events
Errors
| Error | Condition |
|---|---|
AlreadyGraduated | Trade attempted after graduation |
NotGraduated | Manual graduate() before conditions met |
SlippageExceeded | Output below minimum |
DeadlineExpired | Transaction too late |
InsufficientTokens | Selling more than sold supply |
ZeroAmount | Zero ETH or token amount |
TransferFailed | ETH transfer failed |
AlreadyInitialized | Clone already initialized |
NotInitialized | Clone not yet initialized |
Pool Parameters
| Parameter | Value |
|---|---|
| Pool fee | 0.3% (3000) |
| Tick spacing | 60 |
| Liquidity range | Full range (-887220 to 887220) |
| Pair | ETH (address(0)) / token |
Platform Fees
Platform fees are sent immediately at trade time tofeeRecipient. There is no accumulated balance to claim.
- For normal launches:
feeRecipientis the factory owner. - For prepool launches:
feeRecipientis the prepool contract, which distributes them 50/50 to makxTeam and contributors.