Head to head
Stop guessing which one. Put them side by side.
Up to 4 tools, same rows for each: what it is, what it really costs, the trap, and how to wire it up. The URL carries your picks — send it to anyone.
React Three FiberGSAP + ScrollTriggerMotion (was Framer Motion)
Quick read
- Editor's picks: GSAP + ScrollTrigger, Motion (was Framer Motion).
| Field | React Three Fiberr3f.docs.pmnd.rs | GSAP + ScrollTriggergsap.com | Motion (was Framer Motion)motion.dev |
|---|---|---|---|
| What it is | Express a 3D scene as JSX instead of imperative Three.js calls, with React state, hooks and Suspense for asset loading. The real draw is the ecosystem: drei (helpers, controls, text), postprocessing, rapier physics, gltfjsx. | Framework-agnostic animation engine whose differentiator is the timeline model: sequence, offset, nest, reverse and scrub complex choreography with precise control. ScrollTrigger handles scroll-driven and pinned animation; SplitText does per-character reveals. | Renamed from Framer Motion and spun out as an independent MIT project at motion.dev. Declarative animation via props, AnimatePresence for exits, layout/layoutId for shared-element transitions, variants for staggering, useScroll for scroll-linked values. |
| Category | Animation & motion | Animation & motion | Animation & motion |
| Cost tier | free | free | free |
| Pricing | Free · MIT | Free — all plugins, since 2025 | Free MIT · Motion+ €299 once |
| Why builders pick it | Realistic total for a 3D hero: 250–350 kB gz of JS plus model assets. Always lazy-load behind React.lazy so it never touches the initial chunk. | This is the scrolled-feature-article tool. Pinned photo sequences, a headline that assembles as you scroll, a timeline piece that scrubs — that is ScrollTrigger, and nothing else comes close. Webflow acquired GreenSock and made every formerly-paid plugin free in 2025. Core + ScrollTrigger + SplitText is ~49 kB gz. | Page and route transitions between article and index, staggered card reveals on the issue grid, image-to-lightbox shared-element morphs. Composes cleanly with Tailwind and shadcn. Use LazyMotion + the m component to land near 18 kB instead of 38 kB. |
| Watch out for | Version-lock trap: @react-three/fiber@9 requires React >=19 <19.3. Lovable scaffolds commonly sit on React 18.3.x — you need @react-three/fiber@8 on React 18, or upgrade React first. | Free but not OSI open source — a custom Webflow-owned licence that bars using GSAP inside competing no-code animation builders. Building scroll-driven features with it is squarely permitted. Release cadence has slowed to 2–3/year under Webflow. | Do not build long scroll narratives with useScroll — once you need pinning and scrubbing you are rebuilding ScrollTrigger badly. Do not wrap hundreds of list items in motion.div. |
| How to wire it up | npm install three @react-three/fiber @react-three/drei | npm install gsap @gsap/react | npm install motion |
| Editor's pick | No | Yes | Yes |
Which one did you ship?
The grid says what these tools are. This says what builders did about it — one decision per person, changeable whenever you change your mind.
0/280Sign in to add yours.
Or try
Hand this to your Lovable agent
# Tool comparison — React Three Fiber vs GSAP + ScrollTrigger vs Motion (was Framer Motion) Source: Kbaise, a directory of tools that work with Lovable projects. Pick one and tell me why before writing any integration code. ## React Three Fiber (react-three-fiber) - URL: https://r3f.docs.pmnd.rs/ - Category: Animation & motion - Cost: free — Free · MIT - What it is: Express a 3D scene as JSX instead of imperative Three.js calls, with React state, hooks and Suspense for asset loading. The real draw is the ecosystem: drei (helpers, controls, text), postprocessing, rapier physics, gltfjsx. - Why builders pick it: Realistic total for a 3D hero: 250–350 kB gz of JS plus model assets. Always lazy-load behind React.lazy so it never touches the initial chunk. - Trap: Version-lock trap: @react-three/fiber@9 requires React >=19 <19.3. Lovable scaffolds commonly sit on React 18.3.x — you need @react-three/fiber@8 on React 18, or upgrade React first. - Wiring: npm install three @react-three/fiber @react-three/drei - Full dossier: /api/public/tools/react-three-fiber ## GSAP + ScrollTrigger (gsap-scrolltrigger) - URL: https://gsap.com/docs/v3/ - Category: Animation & motion - Cost: free — Free — all plugins, since 2025 - What it is: Framework-agnostic animation engine whose differentiator is the timeline model: sequence, offset, nest, reverse and scrub complex choreography with precise control. ScrollTrigger handles scroll-driven and pinned animation; SplitText does per-character reveals. - Why builders pick it: This is the scrolled-feature-article tool. Pinned photo sequences, a headline that assembles as you scroll, a timeline piece that scrubs — that is ScrollTrigger, and nothing else comes close. Webflow acquired GreenSock and made every formerly-paid plugin free in 2025. Core + ScrollTrigger + SplitText is ~49 kB gz. - Trap: Free but not OSI open source — a custom Webflow-owned licence that bars using GSAP inside competing no-code animation builders. Building scroll-driven features with it is squarely permitted. Release cadence has slowed to 2–3/year under Webflow. - Wiring: npm install gsap @gsap/react - Full dossier: /api/public/tools/gsap-scrolltrigger ## Motion (was Framer Motion) (motion) - URL: https://motion.dev/docs/react - Category: Animation & motion - Cost: free — Free MIT · Motion+ €299 once - What it is: Renamed from Framer Motion and spun out as an independent MIT project at motion.dev. Declarative animation via props, AnimatePresence for exits, layout/layoutId for shared-element transitions, variants for staggering, useScroll for scroll-linked values. - Why builders pick it: Page and route transitions between article and index, staggered card reveals on the issue grid, image-to-lightbox shared-element morphs. Composes cleanly with Tailwind and shadcn. Use LazyMotion + the m component to land near 18 kB instead of 38 kB. - Trap: Do not build long scroll narratives with useScroll — once you need pinning and scrubbing you are rebuilding ScrollTrigger badly. Do not wrap hundreds of list items in motion.div. - Wiring: npm install motion - Full dossier: /api/public/tools/motion ## Quick read - Editor's picks: GSAP + ScrollTrigger, Motion (was Framer Motion). ## Rules 1. Prefer the free tier when no budget was stated, and say what the ceiling is. 2. Read the full dossier before integrating. 3. Fetch /api/public/models before writing any AI model ID.
Agents can fetch the same thing: GET /api/public/compare?slugs=react-three-fiber,gsap-scrolltrigger,motion