Start here
RH Grand Prix
Three thousand kart racers built from the memes of Robinhood Chain, a browser racer you actually drive, and a season system that settles on chain. This section documents all of it, including the parts that are not finished.
What this is
Robinhood Chain went live on 2026-07-01 as an L2 for tokenized equities. The launch materials never used the word meme. Within ten minutes somebody deployed CashCat, and within three weeks the chain was doing more daily actives than Base off the back of animal tickers. RH Grand Prix is a collection about that, built as a kart racer because a grid of nine mascots is what the culture already looked like.
The roster was picked on cultural weight rather than market cap, and the research behind every pick is in REPORT.md at the root of this repo. Every character here is drawn from scratch. Nothing traces a token team's art, nothing borrows Robinhood's marks, and nothing uses Nintendo's visual grammar. The reasoning is on the FAQ.
Start here
Pick the thread that matches why you opened this.
You want to collect
Supply, tiers and rarity first, then the nine factions, then how the art is generated.
The 3,000
You want to drive
Controls and tracks first, then how a finished run turns into points on a season table.
Racing
You want to build on it
The race API shapes, then the provenance and chain reference for verifying anything we claim.
Race API
By the numbers
| Figure | Value | Where it comes from |
|---|---|---|
| Total supply | 3,000 | Hard cap in the contract. No mint function can exceed it. |
| Generative racers | 2,940 | IDs 1 to 2940, composited from per-faction layer families. |
| Legendaries | 50 | IDs 2941 to 2990. Hand-parameterized scenes of dated chain events. |
| One of ones | 10 | IDs 2991 to 3000. |
| Factions | 9 | 550 / 450 / 400 / 400 / 320 / 280 / 240 / 180 / 120. |
| Tracks | 3 | Vault Alley, The Trenches, Night-Vision Swamp. |
| Chain ID | 4663 | Robinhood Chain mainnet, an Arbitrum Orbit L2 with ETH gas. |
| Contract tests | 35 | 23 on the collection, 12 on the season registry. |
What is built and what is not
The honest version, because a docs site that reads like a launch announcement is useless to anyone trying to check something.
| Part | State | Detail |
|---|---|---|
| Art | Generated | All 3,000 images and metadata documents exist, with a provenance hash over them. |
| Contracts | Written and tested | 35 Foundry tests pass. Nothing is deployed and no key has been used. |
| Racer | Playable | Three tracks, nine karts, deterministic replay. Drive it at the Pit Wall. |
| Race API | Live locally | Sign in, submit, standings. SQLite in development, Postgres needs one more Store implementation. |
| Mint | Cold | No contract address is configured, so the mint page shows the cold garage state. |
| Season settlement | Not run | The settle script and the SeasonRegistry contract exist. No season has been frozen. |
| Trophies | Not built | Soulbound ERC-1155s to each racer's token-bound account are designed, deliberately left out of the current contracts. |
How the pieces fit
Five programs, each of which can be run and checked on its own. The arrows only ever point one way, which is why a bug in the site can never corrupt a race result.
generator
Nine SVG art rigs, one per faction, composited under a fixed camera from a deterministic seed. Writes 3,000 PNGs, 3,000 metadata documents, and the sha256 over all of them. Traits.contracts
ERC-721A collection plus a season registry that stores Merkle roots and daily batch hashes. Foundry. Provenance and chain.game
A zero-dependency canvas racer with a fixed 60Hz simulation. The same module runs headless on the server to replay a submitted run. Racing.rewards
Validation, scoring, the season ledger and the Merkle settlement. Pure functions where it can be, SQL where it has to be. Rewards and seasons.web
This site. Garage, Pit Wall, Race Control, Paddock Pass, and these docs. Thin wrappers over the four packages above. Race API.