Skip to content
Back to skills

React Bits

ASecurity

Integrate, customize, and contribute to react-bits (github.com/DavidHDev/react-bits) — the largest and most creative library of animated React components. It covers Vite, Tailwind CSS v4, Three.js/Fiber, GSAP, and Framer Motion integrations. Use when the user asks about react-bits, animated React components, jsrepo registry, or contributing new animated components to the react-bits repository.

  • 47 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 11, 2026
code-qualityshellbashreactnextjsnodegitperformance

Security analysis

A100/100

Pro scans all 7 files and shows the line behind each finding

Scanned September 11, 2026

npx -y skills add akillness/jeo-skills --skill react-bits --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of React Bits?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for React Bits
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/akillness-react-bits/badge)](https://www.skillsdirectory.com/skills/akillness-react-bits)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: react-bits
description: >
  Integrate, customize, and contribute to react-bits (github.com/DavidHDev/react-bits) —
  the largest and most creative library of animated React components. It covers Vite,
  Tailwind CSS v4, Three.js/Fiber, GSAP, and Framer Motion integrations. Use when the
  user asks about react-bits, animated React components, jsrepo registry, or contributing
  new animated components to the react-bits repository.
allowed-tools: Read Grep Glob Bash Write Edit
compatibility: >
  Universal — works with any agent that has shell access. Requires Node.js 18+ and
  Tailwind CSS v4 support.
metadata:
  tags: react-bits, animated-components, gsap, three-js, framer-motion, tailwind-v4, jsrepo, react, vite
  platforms: Claude, ChatGPT, Gemini, Codex
  version: "1.0"
  source: DavidHDev/react-bits
---

# react-bits

**Version 1.0.0**  
DavidHDev/react-bits  
January 2026

> **Note:**  
> This skill provides guidance for integrating, customizing, and contributing to  
> `react-bits` — the largest and most creative library of animated React components.  
> It covers Vite 4/5/6, Tailwind CSS v4, Three.js/Fiber, GSAP, and Framer Motion integrations.

---

## When to use this skill

- When you need to integrate highly creative, animated React components (text animations, background effects, interactive UI elements) into a React/Next.js project.
- When you need to customize or debug existing `react-bits` components (e.g., adjusting GSAP timelines, Three.js canvas setups, or Tailwind classes).
- When contributing new animated components to the `react-bits` repository under the `feat/<feature-name>` branch convention.

## When NOT to use this skill

- For standard, non-animated UI components (use standard component libraries like Radix, Shadcn, or Tailwind UI instead).
- When the target project cannot support heavy animation libraries (Three.js, GSAP, Framer Motion) due to strict bundle size constraints.

## Project Shape

- **Stack**: React, Vite, Tailwind CSS v4, GSAP, Three.js (`@react-three/fiber`, `@react-three/drei`), Framer Motion (`motion`), jsrepo (for registry management).
- **Registry**: Uses `jsrepo` to build and distribute components.
- **Scripts**:
  - `npm run dev`: Concurrently runs `jsrepo build --watch` and `vite` docs server.
  - `npm run build`: Builds the registry, generates LLMs text, sitemap, and builds the Vite site.
  - `npm run new:component`: Generates a new component template using `scripts/generateComponent.js`.
  - `npm run lint`: Lints the codebase using ESLint.
  - `npm run format`: Formats the codebase using Prettier.

## Instructions

### Step 1: Component Integration & Installation
1. Identify the desired component from the `react-bits` catalog (e.g., Text Animations, Backgrounds, UI Components).
2. Install the required peer dependencies in the target project (e.g., `gsap`, `motion`, `@react-three/fiber`, `lucide-react` depending on the component).
3. Copy the component source code or use `jsrepo` if configured in the target project.

### Step 2: Customization & Performance Optimization
1. **Tailwind CSS**: Ensure Tailwind CSS is configured (Tailwind v4 is used in the source repo).
2. **GSAP Contexts**: When customizing GSAP animations, always clean up timelines/tweens inside `useLayoutEffect` or use `@gsap/react`'s `useGSAP` hook to prevent memory leaks and double-triggering in React 18/19 Strict Mode.
3. **Three.js Canvas**: Ensure `<Canvas>` components are properly sized and unmounted to free WebGL contexts.

### Step 3: Contributing a New Component
1. Run `npm run new:component` to scaffold a new component.
2. Implement the component under `src/components/` using clean React patterns.
3. Verify the component works in the local docs server (`npm run dev`).
4. Run `npm run lint` and `npm run format` before committing.
5. Create a branch named `feat/<feature-name>` and submit a PR to `main`.

## Best practices

- **GSAP Cleanup**: Always clean up GSAP timelines/tweens on unmount to prevent memory leaks.
- **Self-Contained Components**: Ensure components do not import internal utilities that won't be available when a user installs the component via `jsrepo`.
- **Branch Naming**: Follow the `feat/<feature-name>` branch naming convention for all pull requests.

## Examples

### Example 1: Safe GSAP Animation Component
```tsx
import { useRef } from 'react';
import gsap from 'gsap';
import { useGSAP } from '@gsap/react';

export default function AnimatedBox() {
  const container = useRef<HTMLDivElement>(null);

  useGSAP(() => {
    gsap.to('.box', { rotation: 360, duration: 2, repeat: -1, ease: 'linear' });
  }, { scope: container });

  return (
    <div ref={container}>
      <div className="box w-16 h-16 bg-blue-500 rounded" />
    </div>
  );
}
```

## References

| File | Purpose |
| --- | --- |
| `package.json` | Project dependencies (GSAP, Three.js, Tailwind v4) and scripts |
| `CONTRIBUTING.md` | Branch naming conventions (feat/<feature-name>) and PR guidelines |
| `jsrepo.config.ts` | Registry configuration for component distribution |

Files in this skill

  • SKILL.md5 KB
  • SKILL.toon1.3 KB
  • evals/evals.json867 B
  • references/contributing-focus.md1.1 KB
  • references/local-setup.md1.1 KB
  • references/project-structure.md1.6 KB
  • scripts/fetch-docs.sh555 B

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…