Building blocks for interfaces that hold up.
Backgrounds, sections, components and templates — each one runs on my own site today. The plan is to pull every piece out into standalone code you can copy, and give it away.
Live, not screenshots
Every preview is the real piece running.
The same code the catalogue hands you — animating in the browser, degrading the way it will on your site.
Four kinds of building block.
Backgrounds
Ambient fields and canvases — a WebGL surface with a CSS floor under it, so nothing is load-bearing for content.
BrowseComponents
Single-purpose UI primitives, each with its real states designed, not just the happy path.
BrowseTemplates
Larger patterns — grids, spec sheets, boot sequences — that carry a way of working, not just a layout.
Coming soonHow it's built
The standard every creation is held to.
Degrades honestly
A server-rendered CSS floor renders first — no JavaScript, no WebGL, or a blocked context still shows the real thing, never a blank box.
Every state designed
Loading, empty, error, disabled, long content — each is a real design, not just the happy path.
Reduced motion, complete
Prefers-reduced-motion freezes to one composed frame instead of a slower version of the same animation.
Copy-paste, not a package
Once a piece is extracted there's nothing to install — self-contained, readable code you paste in and it works.
Pricing
Free for now.
No sign-up, no attribution, no licence to wade through. Take what you need. The other two columns are reserved for paid tiers that don't exist yet — they get designed once there's something worth charging for.
Available now
Free
$0 · forever, for now
- No account required
- Commercial use is fine
- Permissive terms when a piece ships
Not available yet
Pro
—
Not available yet
Team
—
FAQ
Questions worth answering honestly.
Nothing below is promised that isn't already real, or clearly marked as planned.
Every background runs a WebGL surface over a server-rendered CSS floor, so no JavaScript, no WebGL, or a blocked context still gets you the real thing, not a blank box. Every state — loading, empty, error, disabled, long content — is designed, not just the happy path. Reduced motion freezes to one composed frame rather than degrading. And once a piece is extracted, there's no package to install: it's self-contained and readable, paste it in and it works.