Press-Deform Components
Buttons, cards and chips squash under your finger with volume-preserving stretch, then bounce back with true overshoot.
Jelly buttons, clay cards, chrome frames and glass panels — a tactile toolkit where every press deforms, bounces and feels real.
Every element in Squish is a material object — it squashes, stretches and springs back.
Buttons, cards and chips squash under your finger with volume-preserving stretch, then bounce back with true overshoot.
Physics-tuned springs on every state change — hover, press, release — with zero JavaScript and zero motion libraries.
Jelly, chrome, clay and glass ship as token presets. Swap the whole mood in one variable layer — dark mode included.
No build step, no dependencies — just tokens, springs and materials.
Drop in the variable layer and pick a material preset — clay for cards, glass for overlays.
Dial stiffness and bounce per component with utility classes, previewing the squish live in the browser.
Export a production theme, flip dark mode, and ship an interface people want to poke.
Real feedback from products that made the switch to tactile.
"Our onboarding tap-through went up 18%. People just enjoy pressing things now."
"The spring physics felt premium on day one — and my team wrote zero motion code."
"Glass, clay and dark mode out of the box. Our app finally feels touchable."
Start free, upgrade when your interface needs more bounce.
For weekend squishers.
$0/mo
For products people touch daily.
$12/mo
For design teams at scale.
$29/mo
Everything teams ask before their first bounce.
Chrome, Edge, Firefox and Safari (last two versions). Where backdrop-filter is unsupported, glass surfaces fall back to solid panels — every press still deforms and bounces.
Yes. Under prefers-reduced-motion every wobble, squash, float and reveal is disabled, and haptic vibration is never fired. The interface stays fully usable, just calm.
Squish is framework-agnostic CSS at its core — it drops into React, Vue, Svelte or plain HTML. Only the toast and toggle helpers are vanilla JS, and they are optional.
Starter is free for personal and open-source projects. Pro and Studio cover unlimited commercial products per seat, including the Figma kit and token exports.
Join 4,000+ teams shipping tactile interfaces. Starter is free forever.
No spam — unsubscribe anytime. We never share your email.
Press and hold the blob — it deforms under your finger and wobbles back with spring overshoot when you let go.