Site Supply (sitesupply.dev) is the site-component library for agents. Install a free Component in one command, no setup: `npx shadcn@latest add https://site-supply.vercel.app/r/.json` writes one self-contained React file at components/textures/.tsx; mount the component inside an element with position: relative and a size. Pro Components: Copy to Agent on the Component page gives an entitled user a prompt whose URLs carry a day-long token; otherwise register the @textures registry with a Site Supply API key as its bearer header in components.json (see /agents) and run `npx shadcn@latest add @textures/`. # Site Supply > Site Supply is a library of copyable, animated site components: buttons, links, cards and badges that answer the pointer. Each one is a single React component that coding agents like Claude Code, Cursor and Codex add to your project with one prompt. A free set of Components; the rest with Pro. ## Components (free first) - roll (free; use when: CTA, playful): Each letter of the label rolls up out of its line while a twin rolls in from below, staggered from the pointer. /s/roll.md - flood (free; use when: CTA, bold): A filled circle grows from the pointer's entry point to cover the surface, the label inverting inside it; leaving drains it to the exit point. /s/flood.md - spotlight (free; use when: card/pricing card, calm): A soft radial light trails the pointer across the card, its strength following the hover; the copy and frame stay still. /s/spotlight.md - lean (pro; use when: CTA, playful): The surface translates toward the pointer, up to a tenth of the host's height, and the label 1.6 times as far; both spring home on leave. /s/lean.md - nudge (pro; use when: CTA, calm): The arrow slides out of its slot to the right as a twin slides in from the left; the label shifts left 0.15em. Mirrored in RTL. /s/nudge.md - shine (pro; use when: CTA, calm): A soft diagonal sheen sweeps once across the surface from the pointer's side; the label lifts 0.06em. /s/shine.md - trace (pro; use when: CTA, calm): A full-ink outline is revealed around the button from the pointer's nearest point, both ways; the label lifts 0.04em. /s/trace.md - underline (pro; use when: nav link, calm): The underline under the label draws in from the pointer's side and draws out toward the side it left. /s/underline.md - raise (pro; use when: card/pricing card, calm): The card face rises and scales to 1.01 while a pre-drawn shadow fades in beneath it and a corner arrow slides in. /s/raise.md - reveal (pro; use when: card/pricing card, bold): The title rises by the body's height while the body slides up out of a mask beneath it, 40 ms behind; leaving reverses. /s/reveal.md - status (pro; use when: hero/nav link, calm): A ring expands once out of the dot and fades while the label slides a hair toward its end. /s/status.md - tally (pro; use when: hero/pricing card, playful): Each digit column jumps back a few steps and rolls up into its own digit, staggered left to right; separators stay still. /s/tally.md ## Vocabulary - **site component**: A part a website is built from (a button, a link, a card, a badge, a stat) drawn in the project's own font and colours, with a hover, focus and press motion. It fills the element the project already owns and never changes the layout. - **Component**: One item in the Site Supply catalog: a named site component (Roll, Flood, Spotlight …) shipped as one self-contained React file with a measured fit and perf contract. - **host**: The project's own element the Component fills: its