Chonks Smart Contracts

All Chonks smart contracts are deployed on Base. These contracts handle everything from NFT minting and Trait swapping to Chonks Market functionality. All contracts are verified on Basescan.

Main Contract

ChonksMain.sol

The main ERC-6551/ERC-721 smart contract for Chonks. Handles minting, creating the Body token and the Chonks Backpack, facilitates equipping and unequipping Traits, and interacts with the Chonks Market contract.

Traits Contracts

ChonkTraits.sol

Handles minting, burning, and displaying Traits for Chonks. New DataMinter contracts are added as contracts with permissions to create and burn tokens on behalf of the user.

FirstReleaseDataMinter.sol

The data minter contract that holds the contract for the first Season of Chonks Traits.

ChonksBasePaint485DataMinter.sol

Handles the airdrop and display of the Scout Helmet and associated upgrades, a reward for collecting BasePaint canvas #485 in your Chonk's Backpack.

ChonksBasePaint670DataMinter.sol

Handles the airdrop and display of the Pe.Pants Trait, a reward for collecting BasePaint canvas #670, 'Pe.Doodle,' in your Chonk's Backpack.

Marketplace Contract

ChonksMarket.sol

A custom marketplace for trading Chonks and Traits. Since Chonks are an ERC-6551 project, there are security considerations that make them riskier to trade on markets like OpenSea or MagicEden. Traits cannot be trade on traditional marketplaces so we built our own. Our own marketplace allows you to pay royalties directly to our team without another middleman marketplace taking fees.

Utility Contracts

ChonkColorMap.sol

A helper contract to assemble a Chonks 2D colormap from a list of Traits. A ColorMap is a series of bytes that can be used to render a Chonk or a Trait's appearance.

BulkTraitTransfer.sol

A utility contract for transferring multiple Traits between Chonks in a single transaction.

ChonkMakeover.sol

A utility contract for doing multiple updates to your Chonk in a single transaction. This includes equipping and unequipping Traits, changing the Chonk's skin color, and changing a Chonk's background color, and setting their appearance to 2D or 3D.

ChonksEquipHelper.sol

A helper contract for equipping and unequipping Traits on a Chonk and verifying permissions.

MainRenderer2D.sol

A helper contract for rendering a Chonk's appearance in 2D.

MainRenderer3D.sol

A helper contract for rendering a Chonk's appearance in 3D.