contracts

All veCUBE contracts are deployed on Monad Mainnet (Chain ID: 143).


Core Contracts

Name
Address
Description

CubeNFT

0x2BfB8C4a8D7153E88BF1947C193cA6a55e7008D1

ERC-721 NFT with metadata

Rewards

0x15E85660239753A1d1C7bf8C19b2F4c094a80669

Epoch-based reward distribution

Oracle

0xEa1644D8296b4E043b935FdCf00803E4aD4307A2

Price feeds for CUBE, BMC, MON

Factory

0x48749Ba36a2E566be33865E918BA133CA829aE2B

veCube wallet factory

BMC Token

0x244DF0E3A8276aDD749AF3ec3Ff7e642B1dC46a5

BMC ERC-20 reward token

CUBE Token

0x87Bdd0E32aca3AC42d5D35baF38937Eae840f5A3

CUBE ERC-20 reward token


veCube Contracts

These are the selectable staking vault contracts in the UI:

Short Name
Full Address

0xc631...c558

0xc631D96942d54745604CEeCAc2a0C73449cAc558

0xEf7A...dA3

0xEf7Af1c55eDf4d15eBCE99734D64451716B77dA3

0x4d90...83C

0x4d90Ed14b5d2cA55E105A3c2F71Da210EddeD83C

0x322a...De3

0x322a3A51872121E264BaB0F8e85b989055A89De3

0x1182...83A

0x118257222f4Dd6E89F318694bd6e05eF0a00C83A


CubeNFT — Read Functions

Function
Returns
Description

totalMinted()

uint256

Total NFTs ever minted

balanceOf(address)

uint256

NFT balance of an address

ownerOf(uint256)

address

Owner of a specific token

getCubeData(uint256)

CubeData

Full metadata for a token

getCubeCoin(uint256)

address

Meme coin address tied to token

tokenURI(uint256)

string

Metadata URI

name()

string

Collection name

symbol()

string

Collection symbol

CubeNFT — Write Functions

Function
Description

mint(address to)

Mints a new CubeNFT (owner only)

approve(address, uint256)

Approve single token transfer

setApprovalForAll(address, bool)

Approve operator for all tokens

transferFrom(address, address, uint256)

Transfer token

safeTransferFrom(...)

Safe transfer with receiver check

transferOwnership(address)

Transfer contract ownership

renounceOwnership()

Permanently remove owner


CubeData Struct


Rewards Contract Functions

Function
Signature
Description

currentEpoch()

view returns (uint256)

Returns the current epoch number

pendingRewards(address, uint256)

view returns (address[], uint256[], uint256)

Returns claimable tokens and amounts

claimAll(address, uint256, uint256)

external

Claims all rewards for a given epoch


Events

Event
Parameters
Description

CubeMinted

tokenId, memeCoin, color, coinName

Fired on every mint

Transfer

from, to, tokenId

Standard ERC-721 transfer

Approval

owner, approved, tokenId

Token approval

ApprovalForAll

owner, operator, approved

Operator approval

OwnershipTransferred

previousOwner, newOwner

Ownership change

Was this helpful?