Guide

Explore variations

Try the original generator with a different seed or settings in the browser.

Example

tsx
import { BlockchainType, createRuntimeConnector } from "@whitehash/runtime"
import { ArtworkIframe, useRuntimeController } from "@whitehash/runtime/react"
const connector = createRuntimeConnector({
resolveUri: uri => client.resolveUri(uri, { chain: token.chain }),
})
const runtime = useRuntimeController({
state: {
cid: token.generatorUri!,
chain: BlockchainType.TEZOS,
hash: token.iterationHash!,
definition: token.raw.params,
},
options: { connector, autoRefresh: true },
})
return <ArtworkIframe ref={runtime.ref} />

Use the project generator, not the minted artifact

Open a token from a wallet or project, then choose Explore. The runtime loads the project’s reusable generativeUri and adds the selected fxhash, minter, iteration, chain, and any published fx(params) to its URL.

That distinction matters for early gentk tokens: their minted artifactUri can be an iteration-specific capture with the original hash embedded in its HTML. The Reading a book demo below uses project v2:86’s canonical immutable generator, so New hash drives the original artwork rather than a replacement fixture.

Bring your own services

Explore variations

Everything runs in your browser. Change the seed or declared fx(params); the controller rebuilds the content-addressed generator URL and reloads only this iframe.

https://ipfs.io/ipfs/QmSgkdmpqwGLrCtH8qCYQGYNqeKvt47SgasZisGCQrpzKE/?fxhash=oogKC72UnsYRx4BCL8H9fEU8qsiEpgEqAeM6hWfE95VVXmwhRdE&fxminter=tz1L6hF78Vd7ZrjrHsnURLFXqMtr5aShsdow&fxiteration=14840&fxchain=TEZOS