Skip to content

Latest commit

 

History

History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

README.md

@tokenpost/contracts-evm

Spoke-side Solidity for tokenpost (Foundry): the LayerZero OApp + verdict receiver that gate token issuance on a GenLayer consensus verdict, plus a pump.fun-style bonding-curve launchpad (virtual-reserves constant-product curve, fair-launch cloned ERC-20s, gated factory, DEX-graduation adapter).

Layout

  • src/ClaimLauncher.sol — LayerZero OApp. submitClaim sends a claim to GenLayer; on a VERIFIED verdict it mints via the factory.
  • src/VerdictReceiver.sol — receives the GenLayer verdict and dispatches processBridgeMessage to the launcher (GenLayer's dispatch-on-receive pattern; LZ lzReceive + authorized-relayer deliverDirect).
  • src/TokenFactory.sol — gated minter; clones one ERC-20 per claim, mints only for the launcher.
  • src/TokenpostToken.sol — cloned ERC-20 + bonding curve + fees + graduation.
  • src/BondingCurveMath.sol — constant-product curve math (internal library).
  • src/interfaces/IDexAdapter.sol, src/adapters/UniswapV4Adapter.sol — graduation target.

Develop

forge install OpenZeppelin/openzeppelin-contracts
forge install OpenZeppelin/openzeppelin-contracts-upgradeable
forge build
forge test -vv

Dependencies live in lib/ (gitignored) — reinstall with the forge install commands above. Deploy to Base Sepolia via script/Deploy.s.sol (see deploying-contracts-on-base). Live addresses: deployments/base-sepolia.json (claimLoop).