1. Home
  2. /
  3. React-motion
  4. /
  5. Bounce Animation

Bounce Animation - React-motion Typing CST Test

Loading…

Bounce Animation — React-motion Code

Bounces a div up and down using React Motion.

# react_motion/demo/Bounce.jsx
import React from 'react';
import { Motion, spring } from 'react-motion';

function Bounce() {
	return (
		<Motion defaultStyle={{ y: 0 }} style={{ y: spring(100, { stiffness: 120, damping: 5 }) }}>
		{style => (
		<div style={{ width: 100, height: 100, background: 'pink', transform: `translateY(${style.y}px)` }} />
		)}
		</Motion>
	);
}

export default Bounce

React-motion Language Guide

React Motion is a popular animation library for React that uses physics-based animations to create smooth and natural transitions. It provides a simple API to animate components’ styles over time using spring dynamics rather than fixed durations.

Primary Use Cases

  • ▸Animating component style changes (e.g., width, height, opacity)
  • ▸Enter/exit animations for lists and items
  • ▸Sliding panels or modals
  • ▸Interactive hover and drag effects
  • ▸Smooth state transitions in React apps

Notable Features

  • ▸Spring-based animations for natural motion
  • ▸Declarative API integrated with React
  • ▸Interpolates multiple style values simultaneously
  • ▸Supports dynamic updates to animation targets
  • ▸Lightweight and composable

Origin & Creator

React Motion was created by Cheng Lou and open-sourced in 2015, becoming widely adopted for physics-based React animations.

Industrial Note

React Motion is used in web apps, dashboards, interactive UIs, and websites where smooth, physics-based motion improves user experience, such as sliding panels, accordions, loaders, and transitions.

More React-motion Typing Exercises

Simple React Motion AnimationVertical Slide AnimationOpacity Fade AnimationScale Up AnimationDiagonal Slide AnimationSpring Rotation AnimationDelayed Start AnimationMulti-Direction AnimationOpacity and Position Combined

Practice Other Languages

CReactPythonC++RustTypeScriptKotlinPHPJavaC#RubyMqlCqlN1qlCypher