10,000 fully on-chain
pixel critters.
Every critter is generated and stored 100% on Circle Arc — pixels drawn by the contract itself. No IPFS, no server, no reveal. Mint it and it lives on-chain forever.
Mint a critter
checking…These are real tokens, decoded live from tokenURI() on Arc — the exact bytes the chain returns.
Unminted possibilities, drawn by the same pixel logic the contract runs.
Weighted, not uniform.
Species, fur and background roll flat. Eyes and headwear are rarity-weighted, so a plain critter is common and a crowned one is not.
Species 6 · flat
Eyes 5 · weighted
Headwear 4 · weighted
Seed → traits
Each token id hashes with the chain id and contract address into a seed. That seed picks species, fur, belly, eyes and headwear against the rarity table.
Traits → pixels
The contract plots a 16×16 grid and emits an SVG of pure <rect> pixels. Nothing is pre-rendered and nothing is fetched.
On-chain forever
tokenURI returns base64 JSON plus the SVG straight from Arc. Wallets and marketplaces read the art directly from the chain.
What does "fully on-chain" actually mean here?
The image is not a link. tokenURI builds the SVG inside the contract at read time and returns it as base64 data. There is no IPFS pin, no metadata server, and no reveal step — if Arc is running, your critter renders.
What do I pay, and in what?
0.25 USDC per critter, plus gas. Arc uses USDC as its native gas token, so everything is denominated in USDC — no separate gas asset to acquire.
How do I add the Arc network?
Hit Connect wallet. If Arc isn't in your wallet yet the site adds it for you (chain id 5042) and switches over.
How many can I mint?
Up to 100 per transaction, as many transactions as you like. 100 of the 10,000 are held back as a team and marketing reserve.
Where does the art come from if there's no image file?
The Freshly minted row above is the proof: those pictures are decoded live from the contract's own return data, not from a folder on a server.