Jaconir

Free React Scroll Animation Generator (Framer Motion) | Visual Builder | Jaconir Tools

Visually create and customize performant scroll-triggered animations for your React projects. Our free builder generates clean component code using Framer Motion, ready to copy and paste. No login required.

Live Preview
Scroll down in this panel to see the animation.
Animate Me!
Controls
Adjust the animation settings.
0.5s
0.0s
Generated React Component Code
Copy this Framer Motion component into your project.
import { motion, useInView } from 'framer-motion';
import { useRef } from 'react';

// You can wrap any component with this to animate it on scroll.
// Just pass your component as a child.
const ScrollAnimatedComponent = ({ children }) => {
  const ref = useRef(null);
  const isInView = useInView(ref, { once: true });

  const variants = {
  hidden: {
    opacity: 0,
    y: 75
  },
  visible: {
    opacity: 1,
    y: 0
  }
};

  const transition = {
    duration: 0.5,
    delay: 0,
    ease: "easeInOut"
  };

  return (
    <div ref={ref}>
        <motion.div
            variants={variants}
            initial="hidden"
            animate={isInView ? "visible" : "hidden"}
            transition={transition}
        >
            {children}
        </motion.div>
    </div>
  );
};

export default ScrollAnimatedComponent;

Features

Live Visual Preview

See your animation take effect in a scrollable container as you adjust the settings.

Animation Presets

Start with common scroll-triggered animations like fades, slides, and zooms.

Full Customization

Fine-tune the animation's duration, delay, and easing function to get the perfect feel.

React + Framer Motion Code

Generates a clean, reusable React component using Framer Motion's modern `useInView` hook.

How to Use This Tool
  1. Choose an Animation Preset: Select a base animation like "Fade In Up" or "Slide In From Left".
  2. Customize the Animation: Use the sliders and dropdowns to control the timing and feel. Adjust the duration, add a delay, and pick an easing function to match your site's style.
  3. Preview: Scroll the preview pane on the left up and down to see your animation in action. Click "Replay Animation" to reset the preview.
  4. Copy the Code: Once you're satisfied, copy the generated React component code.
  5. Integrate into Your Project: Save the copied code as a new component in your React project (e.g., `ScrollAnimate.tsx`). Import it and wrap any content you want to animate: `<ScrollAnimate><YourContent /></ScrollAnimate>`.

Why Use This Tool?

Modernize Your UI

Subtle scroll animations guide the user's focus and make a long page feel more dynamic and engaging, improving the overall user experience.

Save Development Time

Stop the tedious cycle of tweaking animation code and reloading your browser. Get instant visual feedback and generate production-ready code in seconds.

Learn Framer Motion

This tool is a great way to learn Framer Motion's `whileInView` and `transition` props by seeing how different settings affect the final result.

High Performance

The generated code uses Framer Motion, which is highly optimized for performance, ensuring your animations are smooth and don't slow down your site.

Frequently Asked Questions

Need a custom animation? Try our general CSS animation builder.

Try the CSS Animation Builder