A decentralized platform for launching and trading pump tokens with automated liquidity migration to Uniswap.
- Token Launch: Create new pump tokens with custom names and symbols
- Automated Trading: Buy and sell tokens directly through the factory
- Liquidity Migration: Automatic migration to Uniswap when conditions are met
- Fee Collection: Configurable trading fees
- Public Interface: Clean API for external integration
The codebase is organized with a clear separation between public interfaces and internal implementation:
IPumpFactory.sol
- Public interface for external contractsPumpFactoryClient.ts
- TypeScript client libraryexamples/
- Usage examples and documentation
PumpFactory.sol
- Main factory implementationPumpToken.sol
- ERC20 token implementationinterfaces/
- External contract interfaces
npm install
npx hardhat compile
npx hardhat run scripts/deployPump.ts --network <your-network>
import { PumpFactoryClient } from './lib/PumpFactoryClient';
const client = new PumpFactoryClient(factoryAddress, signer);
// Launch a new token
await client.launchToken('MyToken', 'MTK', '0.1');
// Buy tokens
await client.buyToken(tokenAddress, '0.05');
// Sell tokens
await client.sellToken(tokenAddress, '1000');
Launches a new pump token with optional initial ETH purchase.
Buys tokens from the pump using ETH.
Sells tokens back to the pump for ETH.
Retrieves token information including reserves and migration status.
Gets factory configuration including fees and reserves.
Public interface exposing core functionality:
launchToken()
- Launch new tokensbuyToken()
- Purchase tokenssellToken()
- Sell tokenstokens()
- Get token infogetFactoryConfig()
- Get factory settings
npx hardhat compile
npx hardhat test
npx hardhat run scripts/deployPump.ts --network <network-name>
- All external functions use
nonReentrant
modifier - Owner-only functions for configuration updates
- Proper access controls on token minting
- Safe math operations (Solidity 0.8.28)
MIT License - see LICENSE file for details.
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests if applicable
- Submit a pull request
For questions or issues, please open an issue on GitHub.
If you need any help for your EVM pumpfun smart contract, please hit AnotherRusty up any time