Every bloom is on-chain pixel art.
The Garden uses a custom deterministic rendering engine baked into the smart contract. Each specimen is generated from a 16×16 pixel bitmap + a palette + a stage. No IPFS, no servers, no JPEGs — the art is unchangeable and lives forever on Base.
The architecture of a bloom
5 rarity bands
Deterministic outcomes dictate 5 distinct tiers of scarcity. Rolled once at mint from keccak256(salt, tokenId).
- Seedling 60%
- Sprout 25%
- Bloom 10%
- Heirloom 4%
- Eden 1%
On-chain bitmap
Each bloom's visual output is a true SVG rendered from a 16×16 pixel symmetric flower bitmap packed into 16 uint16 constants. Stage badges (L1/L2/L3) and a halo ring appear as the bloom evolves.
tokenURI(id) → data:application/json;base64,...
8 spectral palettes
Color mapping is derived from transaction hashes, pulling from 8 distinct palettes engineered for dark-mode contrast.
Seedling tier
Solid background. Flat-fill bloom. The starting form.
Sprout tier
Radial gradient background. Gradient-shaded petals. Thin single frame.
Bloom tier
Halo behind bloom. Glowing center pollen. Drifting garden hash text. Corner watermarks.
Heirloom tier
Filter-blur glow. 8 ray lines. Triple frame. 4 corner gems. First Bloom timestamp.
Eden tier mythic
12 rotating rays. Pulsing halo. Animated frame. Twinkling gems. Garden poem. 1-in-64 foil shimmer overlay.
info About these previews
These 50 SVGs were generated locally using the same deriveTraits + buildSVG algorithm baked into the on-chain art contract, with a development salt. They cycle through L0 → L3 stages so you can see each evolution form. The contract output is visually identical — only the salt differs on mainnet.