loading

469 generative
phigures, fully
on chain.

469 fully on-chain generative wallet portraits. Each Phigure is rolled from the wallet that mints it. That wallet's hash seals the body forever. The surface re-rolls from whoever currently holds the token. Pure art, pure math.

phase
·
price
· Ξ
minted
· / 469

made of code.

Phigures is generative anatomy. Each token is built from a deterministic algorithm; joint angles, segment proportions, palette, atmosphere. All derived from byte streams via φ-derived ratios. No manual curation, no human hand between hash and pixel.

The renderer lives in contract storage. There is no IPFS, no S3 bucket, no off-chain server. Every visit pulls the source from Ethereum and renders the figure in your browser; as permanent as the chain itself.

more about the artist ↗

six axes, one figure.

every wallet is its own artist. a Phigure's hash is sliced byte by byte; each slice shapes a different trait of the figure.

0xfc80c9b9da9242e7bacd493b7837201342be8548└──┘└──────┘└──────┘└──────┘└──────┘└──┘coredynamicpalette basebuildstaticpose, ribbonmotionstaticsway, colorshuedynamicpalette pickspanstaticlimbs, eyefielddynamicbackground

each Phigure is born from your wallet address + your token id, hashed together. on every transfer the surface re-hashes with the new holder.

01
static · body

POSE

Joint angles, segment lengths and limb wedges emerge from the static hash. Every figure has its own deterministic stance. No two bodies sit the same way. The render mode (default, skeleton, mono, scatter, or inverted) is decided here too — sealed at mint forever.

02
static · body

RIBBON & EYE

Rare body flourishes locked at mint. A small subset of figures carry a flowing ribbon across the torso, a single open eye, or a stripe ray cutting through the composition. Each: present or absent forever.

03
static · body

BACKGROUND

Eight background styles: solid wall, Bauhaus banner, De Stijl blocks, orb, rings, diagonal split, joint wedges, or open split. The field behind the figure is sealed with the body.

04
dynamic · surface

PALETTE & HUE

Eight hand-tuned colour fields. Red, blue, yellow, cream and their black-bordered variants cycle from the dynamic hash. The current owner's wallet picks which palette paints the figure. Surface rarity is a moving target; body rarity is forever.

05
dynamic · surface

FILL MODE

Four ways to fill the body: solid colour, voronoi cells, woven truchet tiles, or a tight checker grid. The same body reads as a flat poster, a fractured field, a woven sheet, or a chequered surface — picked at view time by whoever holds the token.

06
dynamic · surface

COLOR COUNT

Phigures use anywhere from one to five colours from their palette. A monochrome (one-colour) figure is rare and visually striking; a five-colour figure is the common case. The count is set by the dynamic hash, so it re-rolls every time the token changes hands.

Six axes · three sealed at mint, three re-stamped on every transfer.

rare by design.

the algorithm rolls six weighted dice for every Phigure. most rolls land on common faces. some, maybe one in a few hundred, line up multiple rare axes at once. those are grails. below are four of them, found by scanning 20,000 candidate hashes.

grail · 01
skeleton
grail · 02
mono
grail · 03
scatter
grail · 04
inverted

how they form

the render mode is the spine of every grail. the algorithm decides at mint which of the five modes paints the figure; four of those modes are non-default and each shows up in roughly 1% of mints.

  • skeleton render: ~0.87%
  • mono render: ~0.85%
  • scatter render: ~0.92%
  • inverted render: ~0.85%
  • any non-default render combined: ~3.5%

across the full 469 supply, that means roughly:

  • ~16 tokens will carry a non-default render mode
  • ~4 tokens per specific render mode (skeleton, mono, scatter, inverted)

the four examples above are simulated; your collection's actual grails reveal themselves at mint.

what stays, what changes

everything that makes a grail rare on the body side render mode, ribbon, eye, background, stripe rayis sealed at mint. transfers cannot erase a grail's body. new owners only re-roll the surface (palette, fill mode, colour count) within whatever render mode the body already carries.

a skeleton stays a skeleton. its colour may shift with the next owner; its skeleton-nesscannot. rare bodies are forever; rare surfaces are borrowed.

two acts, one drop.

01
PRESALE

Allowlist only. 1 per wallet.

1/1 collectors, Pulverulents, community collabs.

02
PUBLIC

Open mint. 2 per wallet.

The artist has reserved 5 Phigures from the supply.

body stays.
surface mutates.

for example
owner A

STATIC HASH · body

Sealed at mint from the original minter's wallet. The body (pose, limbs, ribbon, eye) is identical between these two figures.

owner B

DYNAMIC HASH · surface

Re-derived at view time from the current owner. Palette, fill mode, background and atmosphere all differ between these two figures, even though the body is the same.

same body (pose, limbs, ribbon, eye), two different surfaces (palette, fill, background, atmosphere). transfer the token, the right side re-stamps.

questions.

proof of chain.

no IPFS, no S3 bucket, no off-chain server. the render engine and the algorithm both live in Ethereum contract storage; every token URI assembles them on demand. verify it yourself.

erc-721 · erc-2981
Phigures
0xcDC2…15A6
phase·
minted· / 469
render engine
p5 shim
·
chunks·
state·
algorithm
anatomy.js
·
chunks·
state·

every visit to a Phigure's tokenURI reads the p5 shim + anatomy bytes from the two storage contracts above and inlines them into a self-contained data:text/html page. nothing fetched off-chain. nothing lives anywhere else.