driftkit

Fine-tune

StiffnessiSnap speed. Higher = faster.300
DampingiResistance. Low = wobbly. High = heavy.30
MassiWeight. Heavier = slower, more momentum.1
BounceiElasticity. 0 = none. 1 = rubber ball.0

Export Code

const springConfig = {
  "type": "spring",
  "stiffness": 300,
  "damping": 30,
  "mass": 1
};

// Basic hover animation
<motion.div
  whileHover={{ scale: 1.05 }}
  transition={springConfig}
>
  <Button>Hover me</Button>
</motion.div>

// Card with lift effect
<motion.div
  whileHover={{
    scale: 1.02,
    y: -4,
  }}
  transition={springConfig}
>
  <Card>Your content</Card>
</motion.div>

// Continuous animation
<motion.div
  animate={{
    scale: [1, 1.1, 1],
    rotate: [0, 180, 360],
  }}
  transition={{
    ...springConfig,
    repeat: Infinity,
    repeatDelay: 2,
  }}
>
  <div>Animated element</div>
</motion.div>

Compare

Same component, different physics

Auto-replay off

Spring Curve

Settle 0.26sOvershoot 0.4%Oscillations 2
0s0.375s0.75s1.125s1.5s00.51
Snappy
Smooth
Bouncy
Gentle
Your config