A Motion lab
Choreograph a sentence.
Split text accessibly, pick a curve, set the stagger, then play or scrub the timeline by hand.
splitText · timeline · stagger · cubicBezier · springEase
Every frame has a reason.
An open-source AI skill and a toolkit of small, measured libraries for motion, scroll choreography, interactive 3D and product interfaces. The skill decides what a project needs. The libraries build it — and clean up after themselves.
01 / Skill
An agent skill that reads your project before touching it — framework, design system, existing libraries — then commits to a direction and the smallest change that achieves it.
skills/snowbros-creative · detect-stack · audit-motion
02 / Motion
Timelines, springs, scroll progress and sticky pinning share a single frame loop that sleeps when nothing moves. Every pattern ships a designed reduced-motion alternative.
@snowbros/core · @snowbros/motion
03 / Interaction
Magnetic targets, tilt, spotlight and spring feedback — with pointer, touch and keyboard treated as equals, never as afterthoughts.
@snowbros/fx · springs from @snowbros/core
04 / Space
Managed three.js stages render on demand, cap pixel ratio by device tier, fall back to SVG, and hand their GPU context back when they leave. This crystal is one.
@snowbros/scene · three (optional peer)
05 / Effects
Procedural fields, masked reveals, scramble and path drawing — generated in code, so they scale, theme and respect preferences.
@snowbros/fx
06 / Interface
Functional motion for dashboards, tables and forms: short, interruptible, explaining what changed and nothing more. Adapters for React and Web Components.
@snowbros/react · @snowbros/elements · @snowbros/tokens
Six dimensions, one lattice. Every arm is a package you can adopt on its own.
02 — Thesis
Most motion on the web is decoration. We build motion that explains — what changed, where it went, what to do next. One clock drives every frame. Native scroll stays native. Reduced motion is a design, not a switch. And nothing ships until it has been measured.
03 — Labs
Every specimen below runs on the toolkit, in this page, right now. Change the parameters; the code changes with you.
A Motion lab
Split text accessibly, pick a curve, set the stagger, then play or scrub the timeline by hand.
splitText · timeline · stagger · cubicBezier · springEase
Every frame has a reason.
B Interaction lab
Three primitives, each usable by pointer, touch and keyboard. On touch screens the pointer-only effects step aside instead of misfiring.
magnetic · tilt · spotlight · createSpringValue
magnetic() The target leans toward a fine pointer within 80 px, then springs home. 0 activations
Tilt with the pointer, or use the arrow keys while focused. Escape levels it.
tilt() + spotlight() Perspective tilt and a light that follows the pointer. Keyboard: focus the pass, use arrow keys.
Press and hold with pointer, Space or Enter for one second.
createSpringValue() Hold for one second — release early and the spring rewinds. Works with Space and Enter.
C Space lab
The hero crystal, in a stage of its own. It draws a frame only when something changes — watch the counter stay still when you do.
withFallback · createStage · createOrbitInertia · createParticleField
Drag or use arrow keys to rotate
D Interface lab
Functional motion: under 250 ms, no bounce, never blocking input. The full SaaS demo lives in Toolkit Ops.
flip · animate · functional tokens
E Effects lab
No images on this page. Everything you see here is generated in code and turns static when you ask for less motion.
imageReveal · flowField · scramble · drawPath
scramble — hover, focus or press
drawPath — the lattice, plotted when it enters view
F Playground
Every control rebuilds the pattern and rewrites the snippet. Deep-link straight to one:
04 — System
Dependencies never point upward. Select a package to see exactly what it brings with it.
Agent
Adapters
Capabilities
Foundation
05 — Start
01 Discover
You are here.
The lattice above, the labs, the playground — all built with the toolkit, in the open.
See how this site is built ↗02 Understand
Poke at real demos.
A live pattern playground and a working SaaS control room, with keyboard, reduced motion and axe checks in CI.
03 Install
Give your agent the skill.
git clone https://github.com/snowbros-labs/creative-engineering
cp -r creative-engineering/skills/snowbros-creative ~/.claude/skills/
npm install @snowbros/core @snowbros/motion
04 Integrate
Start from the project you have.
The skill inspects your stack first and works with what is already there — GSAP, Motion, R3F, your design system. Ask it:
/snowbros-creative audit the motion on this page and fix the worst three issues
05 Contribute
Make the lattice bigger.
Patterns, platform guides, adapters and fixes are welcome. Everything is dual-licensed MIT or Apache-2.0.