Entry 01NFT collection · token · Uniswap v4 hook
HASHCATS
An NFT collection on Robinhood Chain. Cats are mined, and their images are assembled in Solidity from pixels stored in the contract.
Colours, gradient steps and outlines were chosen within the gas budget for reading the image.
- Canvas
- 64 × 64 px
- Stored per cat
- 4 444 bytes
- Supply
- Mined only
- Chain
- Robinhood Chain · 4663
01The supply
A cat is mined. The contract has no other door.
False if
A submitted hash equals the current target and the contract still mints a cat.
You cannot buy a cat from the contract. A miner runs in a browser or in a program of your own. It searches for an input whose hash is below the current target. The contract checks the submitted hash and mints the cat. There is no mint button, allowlist or queue.
Difficulty is not a constant. The collection has three dials: the pace it aims for, a half-life that lets difficulty decay when miners leave, and a failsafe interval so that it cannot stall altogether. They are dials rather than fixed numbers because the right values are only knowable once real miners turn up.
02The art
The contract stores the pixels and returns the PNG.
False if
Taking our server offline prevents a normal contract read from returning the image.
A cat is 64 × 64 pixels and 4 444 bytes in the collection’s own storage. The bytes are packed pixels, and the colours come from one palette shared by every cat.
The Solidity renderer writes the PNG byte by byte: header, chunks and checksum. A normal read call returns it as a data URI. There is no IPFS hash in that path, no gateway, no API key and nothing of ours that has to stay switched on.
03The token
After launch, new $HASH comes only from burned cats.
False if
One cat pays out both the full holding rent and the full burn value.
At launch, a fixed amount of $HASH was minted as the pool’s starting liquidity. After that, new $HASH comes only from burning cats. The cat is the scarce side of the pair and the token is the liquid one.
Holding a cat earns rent from later mints; burning it produces $HASH. The same cat cannot do both at full value.
04The market
The trading fee is spent, not kept.
False if
The collected trading fee accumulates in a treasury or is used for something other than buying and burning $HASH.
Trading runs through a Uniswap v4 hook written for this collection. The hook spends the fees it collects on buying $HASH from the market and burning it.
Burning a cat creates $HASH; the hook buys and burns existing $HASH.
05The pool
Rarity moves a cat up the queue; it never multiplies the price.
False if
A rare cat carries a price multiplier, or an ordinary purchase hands out the rarest cats first.
A pool holds whole cats on one side and a token on the other: the reserve times the number of cats stays constant, and the floor is the reserve divided by that number. The same contract runs twice, against ETH and against $HASH.
Cats stand in a queue ordered by the epoch they were mined in, and an ordinary purchase hands out the cheapest first. Taking one particular cat costs what it would cost to sweep everything below it and sell the rest back: the depth is paid in fee, not in reserve.
The fee is a constant, not a setting; the pool sits behind an upgradeable proxy.
06The rules
Staking has no early exit; burning $HASH raises status.
False if
Paying a penalty releases a stake early, or raising a cat’s status leaves it without a frame.
Staking lasts 7, 30 or 90 days, with no early exit.
A cat’s status is raised by burning $HASH into it, and the frame that appears around the cat is what the burning bought. The public board at hashcats.fun/board shows who has burned the most and reads entirely from the chain.
Where to check
Contract addresses on chain 4663.
Robinhood Chain is an Arbitrum Orbit L2 with chain ID 4663. These public addresses can be checked in an explorer for chain 4663.
- Collection
0xCA75DF55Cc9C476DB27a7375D1fc8E794cf80721 - $HASH
0xCA75082b85bb7Bec8325d513F615b16BDa260020 - Uniswap v4 hook
0xCA757986E932BC55776492Cca0b413E9b3D02aCC - Cat pool · ETH
0xCa759BA2594bb33a23d62C11C1699550595D0003 - Cat pool · $HASH
0xCA752BE59e720e5dbE7F056DFc6f733D0E6f0004 - Staking
0xca758b67a13Eb06474251a9f451F841A76A20002 - Status
0xca756851765C363aFb8C8743934b357c38380001 - Renderer
0xCA75bD02437D5819C9CeaF6709cE2e49312B0000
Read the project
- hashcats.fun (opens in a new tab)
Read the collection and mining documentation.
- hashcats.fun/board (opens in a new tab)
See who has burned the most.
- stats.hashcats.fun (opens in a new tab)
Read the event-based dashboard.
- DefiLlama (opens in a new tab)
Check figures through the third-party DefiLlama adapter.
- github.com/hashcats-dot-fun (opens in a new tab)
- x.com/hashcats_rh (opens in a new tab)
Mining creates the cats. Solidity assembles their images. Burning a cat creates $HASH. Trading fees buy and burn $HASH.
Back to the studio