Skip to main content

Jelly Button

An elastic physics spring-mass button with magnetic cursor suction, dynamic surface bulge, squash-and-stretch on click, liquid sheen, and droplet splash particles.

  • 4 KB .bexode
  • 7 live inputs
  • Responsive fit Layout
Live runtime

Use it

The code follows your customizations. Install with npm i exodeui.

import { ExodeUICanvas } from 'exodeui';

// jelly-button.bexode goes in /public (download it below)
export function JellyButton() {
  return (
    <ExodeUICanvas
      src="/jelly-button.bexode"
      fit="Layout"   // responsive: redraws at any container size
      autoPlay
      interactive
      onTrigger={(name) => {
        // fires: 'jellyClick'
      }}
      style={{ width: '100%', height: 360 }}
    />
  );
}

Inputs

InputTypeDefaultRange
labelTextTouch the Jelly—
sublabelTextElastic spring-mass physics with magnetic suction—
stiffnessNumber18040 – 400
dampingNumber144 – 30
accentText#ec4899hex colour
accent2Text#f43f5ehex colour
bgText#0c0810hex colour

Events (via onTrigger): jellyClick