MCPcopy Index your code
hub / github.com/Avijit07x/animateicons

github.com/Avijit07x/animateicons @v0.3.4

Chat with this repo
repository ↗ · DeepWiki ↗ · release v0.3.4 ↗ · + Follow
979 symbols 2,846 edges 467 files 4 documented · 0%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

AnimateIcons

281 animated SVG icons for React. Hover & imperative triggers, configurable size, color, and duration. Built on motion/react.

Browse icons  ·  Docs  ·  MCP  ·  Sponsor

npm GitHub stars Contributors Last commit License MIT Vercel OSS Program

AnimateIcons preview


Quick start

pnpm add @animateicons/react
import { BellRingIcon } from "@animateicons/react/lucide";

export function Notifications() {
    return <BellRingIcon size={24} color="#f45b48" />;
}

Icons animate on hover by default, and motion is bundled. Don't want a dependency? Copy the source instead with npx animateicons add bell-ring, browse them interactively with npx animateicons browse, the shadcn CLI, or an AI agent via the MCP server.

Full documentation lives on the site  ·  Install, CLI, styling & API  ·  MCP server  ·  Browse the gallery


Repository layout

animateicons/
├── icons/
│   ├── lucide/          248 Lucide-style icons
│   └── huge/             33 Huge-style icons
├── npm/                 @animateicons/react published package
├── core/                shared catalog/search/write logic (bundled into cli + mcp)
├── cli/                 animateicons CLI (npx animateicons add / browse)
├── mcp/                 @animateicons/mcp server for AI agents
├── app/
│   ├── icons/[library]/ gallery routes
│   └── icons/docs/      install + MCP guides (MDX)
├── components/          shared UI (Hero, Section, etc.)
├── hooks/               useIconFilter, useIconAnimation
├── tests/               Vitest + React Testing Library
└── scripts/             registry + catalog codegen, codemods

Local development

git clone https://github.com/Avijit07x/animateicons.git
cd animateicons
pnpm install
pnpm dev

Common scripts:

pnpm dev          # gallery dev server (Turbopack)
pnpm build        # production build
pnpm test         # vitest run
pnpm typecheck    # tsc --noEmit

pnpm --filter @animateicons/react build       # build the npm package
pnpm --filter @animateicons/react test:smoke  # smoke-test the built dist

Contributing

PRs adding icons are welcome. Each icon is a single React component file - copy any existing one as a template.

  1. Create icons/<library>/<name>-icon.tsx from an existing icon
  2. Register it in data/<library>-icons.json
  3. Run pnpm gen:icons to regenerate the registry + catalog
  4. Open a PR against dev

Full workflow in CONTRIBUTING.md.


License

MIT.

If AnimateIcons saves you time, consider sponsoring the project.


Built with Next.js, motion/react, and shadcn/ui.

animateicons.in  ·  GitHub  ·  @animateicons/react on npm

Extension points exported contracts — how you extend this code

WordRotateProps (Interface)
(no doc)
components/magicui/word-rotate.tsx
CodeTab (Interface)
(no doc)
components/ui/code-block.tsx
V0IconHandle (Interface)
(no doc)
components/icons/V0Icon.tsx
FetchCatalogOptions (Interface)
(no doc)
core/src/catalog.ts
GlobalOptions (Interface)
(no doc)
cli/src/cli.ts
Props (Interface)
(no doc)
app/icons/_components/docs/OpenInAI.tsx
ToolContext (Interface)
(no doc)
mcp/src/tools.ts
UserIconHandle (Interface)
(no doc)
icons/lucide/user-icon.tsx

Core symbols most depended-on inside this repo

cn
called by 383
lib/utils.ts
handleHover
called by 42
utils/handleHover.ts
mapBmcSupporter
called by 12
lib/bmc/mapper.ts
fetchCatalog
called by 10
core/src/catalog.ts
fetchRegistryItem
called by 8
core/src/catalog.ts
resolveIcon
called by 8
core/src/resolve.ts
firstGrapheme
called by 8
lib/utils/firstGrapheme.ts
drawStroke
called by 8
icons/lucide/bitcoin-icon.tsx

Shape

Interface 597
Function 382

Languages

TypeScript100%

Modules by API surface

components/ui/sidebar.tsx25 symbols
components/ui/dropdown-menu.tsx15 symbols
cli/src/commands/browse.tsx13 symbols
components/ui/sheet.tsx10 symbols
mcp/src/tools.ts9 symbols
app/icons/[library]/[name]/page.tsx9 symbols
app/icons/_contexts/IconTileContext.tsx8 symbols
core/src/catalog.ts7 symbols
npm/scripts/generate-exports.ts6 symbols
npm/scripts/generate-exports.mjs6 symbols
components/ui/code-block.tsx6 symbols
cli/src/util/project.ts6 symbols

For agents

$ claude mcp add animateicons \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact