Skip to main content

Contract addresses

Deployed contract addresses by network.


Base Mainnet (8453)

Infrastructure

ContractAddress
CreatorRegistry0x...
Create2Deployer0x...
VaultActivationBatcher0x...

Governance

ContractAddress
ve46260x...
VaultGaugeVoting0x...
VoterRewardsDistributor0x...
BribesFactory0x...

External contracts

ContractAddress
Uniswap V3 Router0x2626664c2603336E57B271c5C0b26F421741e481
Uniswap CCA Factory0xcca1101C61cF5cb44C968947985300DF945C3565
WETH0x4200000000000000000000000000000000000006
LayerZero Endpoint0x...

Per-vault contracts

Each creator vault has its own set of contracts:

ContractDescription
CreatorOVaultERC-4626 vault (also ▢TOKEN)
CreatorOVaultWrapper▢TOKEN ↔ ■TOKEN converter
CreatorShareOFT■TOKEN (LayerZero OFT)
CreatorGaugeControllerFee distribution
StrategiesCCA, Charm, Ajna, etc.

Example: AKITA vault

ContractAddress
AKITA (TOKEN)0x...
CreatorOVault (▢AKITA)0x...
CreatorOVaultWrapper0x...
CreatorShareOFT (■AKITA)0x...
CreatorGaugeController0x...

Base Sepolia (84532)

Testnet deployments for development:

ContractAddress
CreatorRegistry0x...
Create2Deployer0x...
Test Token0x...
Test Vault0x...

Cross-chain deployments

■TOKEN contracts are deployed to the same address on all chains via CREATE2:

ChainEIDAddress
Base301840x...
Arbitrum301100x...
Optimism301110x...

Verification

All contracts are verified on:


Finding addresses

From registry

ICreatorRegistry registry = ICreatorRegistry(REGISTRY_ADDRESS);

// Get vault for a creator coin
address vault = registry.getVault(creatorCoin);

// Get wrapper
address wrapper = registry.getWrapper(creatorCoin);

// Get ShareOFT
address shareOFT = registry.getShareOFT(creatorCoin);

From frontend config

See frontend/src/config/contracts.ts for current addresses.


Address updates

Contract addresses are updated in:

  1. This documentation
  2. Frontend config
  3. CreatorRegistry (on-chain)

For the latest addresses, query the CreatorRegistry contract.