Deep dive

How the toolkit works

Three ideas are enough to get started: projects contain tokens, previews are not live artwork, and the toolkit reads public records.

1. A project contains tokens

A project is a generative artwork release. A token is one edition from that project. Each token has its own identity and seed, so it can be found and recreated later.

text
project { chain, id }
└─ token { chain, contract, tokenId }

2. A preview is not the live artwork

displayUri and thumbnailUri are ordinary preview images. artifactUri points to the live generator. Artwork shows the image first, then opens the live edition in a protected browser frame.

3. One consistent shape across networks

Tezos, Ethereum, and Base store their records differently. The chain reader translates them into the same WhitehashProject or WhitehashToken shape, whichever network the work comes from. It then finds the files on IPFS or onchfs without a hosted backend.

text
chain + public indexer/RPC
→ normalized project or token
→ content-addressed preview and live artwork