
Animated Component Libraries
Drop pre-built animated React sections from Magic UI and React Bits into landing pages and dashboards instead of hand-rolling Framer Motion.
Overview
Animated Component Libraries is an agent skill for the Build phase that integrates Magic UI and React Bits animated React components into Tailwind marketing and app UIs.
Install
npx skills add https://github.com/freshtechbro/claudedesignskills --skill animated-component-librariesWhat is this skill?
- Magic UI: 150+ TypeScript components on Tailwind CSS and Framer Motion with shadcn/ui integration
- React Bits: 90+ minimal-dependency animated components for effects, backgrounds, and micro-interactions
- Copy-paste ready patterns for landing pages, marketing sites, and interactive dashboards
- Guidance when to pick library components vs manual Framer Motion or GSAP
- TypeScript-first, modern React patterns with customization hooks
- 150+ Magic UI TypeScript components
- 90+ React Bits animated components
Adoption & trust: 910 installs on skills.sh; 227 GitHub stars; 1/3 security scanners passed (skills.sh audits).
What problem does it solve?
You need a modern animated landing page or dashboard but hand-crafting Framer Motion or GSAP sections is slow and inconsistent.
Who is it for?
Indie SaaS founders building React landing pages or dashboards who want library-backed motion with TypeScript and Tailwind.
Skip if: Non-React stacks, native mobile-only UI, or brands that require fully custom motion design with no third-party component copying.
When should I use this skill?
Building landing pages, marketing sites, or interactive UIs needing pre-made animated components; triggers include Magic UI, React Bits, shadcn/ui, Tailwind CSS components.
What do I get? / Deliverables
Your agent selects Magic UI or React Bits components, wires shadcn/Tailwind integration, and assembles interactive UI sections without reinventing motion primitives.
- Integrated animated React sections from Magic UI and/or React Bits
- Library choice rationale and shadcn-compatible wiring notes
Recommended Skills
Journey fit
How it compares
Use instead of manual Framer Motion/GSAP builds when pre-made Magic UI or React Bits blocks meet the design brief.
Common Questions / FAQ
Who is animated-component-libraries for?
Solo builders and small teams on React who want fast, polished animated UI via Magic UI and React Bits rather than bespoke animation code.
When should I use animated-component-libraries?
During Build frontend work on landing pages, marketing sites, or dashboards when tasks mention Magic UI, React Bits, shadcn, or animated component libraries.
Is animated-component-libraries safe to install?
Review the Security Audits panel on this Prism page and vet copied component source and npm dependencies before shipping to production.
SKILL.md
READMESKILL.md - Animated Component Libraries
# Animated Component Libraries ## Overview This skill provides expertise in pre-built animated React component libraries, specifically Magic UI and React Bits. These libraries offer production-ready, animated components that significantly accelerate development of modern, interactive web applications. **Magic UI** provides 150+ TypeScript components built on Tailwind CSS and Framer Motion, designed for seamless integration with shadcn/ui. Components are copy-paste ready and highly customizable. **React Bits** offers 90+ animated React components with minimal dependencies, focusing on visual effects, backgrounds, and micro-interactions. Components emphasize performance and ease of customization. Both libraries follow modern React patterns, support TypeScript, and integrate with popular design systems. ## Core Concepts ### Magic UI Architecture Magic UI components are built on three foundational technologies: 1. **Tailwind CSS**: Utility-first styling with full customization via `tailwind.config.js` 2. **Framer Motion**: Physics-based animations and gesture recognition 3. **shadcn/ui Integration**: Follows shadcn conventions for CLI installation and component structure **Installation Methods**: ```bash # Via shadcn CLI (recommended) npx shadcn@latest add https://magicui.design/r/animated-beam # Manual installation # 1. Copy component code to components/ui/ # 2. Install motion: npm install motion # 3. Add required CSS animations to globals.css # 4. Ensure cn() utility exists in lib/utils.ts ``` **Component Structure**: ```typescript // All Magic UI components follow this pattern: import { cn } from "@/lib/utils" import { motion } from "motion/react" interface ComponentProps extends React.ComponentPropsWithoutRef<"div"> { customProp?: string className?: string } export function MagicComponent({ className, customProp, ...props }: ComponentProps) { return ( <motion.div className={cn("base-styles", className)} {...props} > {/* Component content */} </motion.div> ) } ``` ### React Bits Architecture React Bits emphasizes lightweight, standalone components with minimal dependencies: 1. **Self-Contained**: Each component has minimal external dependencies 2. **CSS-in-JS Optional**: Many components use inline styles or CSS modules 3. **Performance-First**: Optimized for 60fps animations 4. **WebGL Support**: Some components (Particles, Plasma) use WebGL for advanced effects **Installation**: ```bash # Manual copy-paste (primary method) # Copy component files from reactbits.dev to your project # Key dependencies (install as needed): npm install framer-motion # For animation-heavy components npm install ogl # For WebGL components (Particles, Plasma) ``` **Component Categories**: - **Text Animations**: BlurText, CircularText, CountUp, SpinningText - **Interactive Elements**: MagicButton, Magnet, Dock, Stepper - **Backgrounds**: Aurora, Plasma, Particles - **Lists & Layouts**: AnimatedList, Bento Grid ## Common Patterns ### 1. Magic UI: Animated Background Patterns Create dynamic background effects with SVG-based patterns: ```typescript import { GridPattern } from "@/components/ui/grid-pattern" import { AnimatedGridPattern } from "@/components/ui/animated-grid-pattern" import { cn } from "@/lib/utils" export default function HeroSection() { return (