Where the visitors (or the revenue) came from, as a squarified treemap: each source is a tile sized by its share, labelled with its number and percentage; switch between visits and revenue and every tile slides and resizes to its new place.
The squarify loop compares `worst(row + item)` with `worst(row)` where worst = max(len²·max / sum², sum² / (len²·min)), the classic Bruls–Huizing–van Wijk rule, and tiles are keyed by name so changing data animates the same element from its old rectangle to its new one.
From prompt to a block in your page.
The preview is the shipped block inside a neutral demo page. Scroll, hover, drag: everything is live.
Token sets re-tint the block live. The prompt carries the one you chose.
A paste-in snippet, or a component for Next.js, React, Vue, Astro, WordPress, Shopify or Webflow.
It quotes the block's markup, styles and script verbatim with the tokens and the rules that keep it self-contained.
Add the head lines it names, paste the block, replace the placeholder copy. Tokens live on :root.