Skip to content
Back to skills

Fumadocs Registry Integration

ASecurity

Register 8-bit components in registry.json for shadcn/ui add command. Apply when adding new components to the component library distribution.

  • 666 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added February 8, 2026
documentationgodocumentation

Works with

  • cli

Security analysis

A100/100

Scanned February 12, 2026

npx -y skills add majiayu000/claude-skill-registry --skill fumadocs-registry-integration --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Fumadocs Registry Integration?

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

Security grade badge for Fumadocs Registry Integration
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/majiayu000-fumadocs-registry-integration/badge)](https://www.skillsdirectory.com/skills/majiayu000-fumadocs-registry-integration)

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: fumadocs-registry-integration
description: Register 8-bit components in registry.json for shadcn/ui add command. Apply when adding new components to the component library distribution.
---

## Registry Integration

Register 8-bit components in `registry.json` for discovery via `shadcn add @8bitcn/[component-name]`.

### Component Entry Pattern

```json
{
  "name": "button",
  "type": "registry:component",
  "title": "8-bit Button",
  "description": "A simple 8-bit button component",
  "registryDependencies": ["button"],
  "files": [
    {
      "path": "components/ui/8bit/button.tsx",
      "type": "registry:component",
      "target": "components/ui/8bit/button.tsx"
    },
    {
      "path": "components/ui/8bit/styles/retro.css",
      "type": "registry:component",
      "target": "components/ui/8bit/styles/retro.css"
    }
  ]
}
```

### Block Entry Pattern

For pre-built layouts like game UIs:

```json
{
  "name": "quest-log",
  "type": "registry:block",
  "title": "8-bit Quest Log",
  "description": "An 8-bit quest and mission tracking system.",
  "registryDependencies": ["card", "accordion"],
  "categories": ["gaming"],
  "files": [
    {
      "path": "components/ui/8bit/quest-log.tsx",
      "type": "registry:block",
      "target": "components/ui/8bit/quest-log.tsx"
    },
    {
      "path": "components/ui/8bit/styles/retro.css",
      "type": "registry:component",
      "target": "components/ui/8bit/styles/retro.css"
    }
  ]
}
```

### Required retro.css

Always include `retro.css` in files array:

```json
"files": [
  {
    "path": "components/ui/8bit/new-component.tsx",
    "type": "registry:component",
    "target": "components/ui/8bit/new-component.tsx"
  },
  {
    "path": "components/ui/8bit/styles/retro.css",
    "type": "registry:component",
    "target": "components/ui/8bit/styles/retro.css"
  }
]
```

### Categories

Use gaming-specific categories for game components:

```json
"categories": ["gaming"]
```

Available categories: `gaming`, `layout`, `form`, `data-display`, `feedback`, `navigation`, `overlay`.

### Registry Dependencies

List base shadcn dependencies (not 8-bit versions):

```json
"registryDependencies": ["button", "dialog", "progress"]
```

For blocks with multiple components:

```json
"registryDependencies": ["card", "button", "progress", "tabs"]
```

### Type Selection

**registry:component** - Single reusable component:

```json
{
  "type": "registry:component",
  "files": [...]
}
```

**registry:block** - Pre-built layout or feature:

```json
{
  "type": "registry:block",
  "categories": ["gaming"],
  "files": [...]
}
```

### Complete Example

```json
{
  "name": "health-bar",
  "type": "registry:component",
  "title": "8-bit Health Bar",
  "description": "An 8-bit health bar component for game UI.",
  "registryDependencies": ["progress"],
  "files": [
    {
      "path": "components/ui/8bit/health-bar.tsx",
      "type": "registry:component",
      "target": "components/ui/8bit/health-bar.tsx"
    },
    {
      "path": "components/ui/8bit/progress.tsx",
      "type": "registry:component",
      "target": "components/ui/8bit/progress.tsx"
    },
    {
      "path": "components/ui/8bit/styles/retro.css",
      "type": "registry:component",
      "target": "components/ui/8bit/styles/retro.css"
    }
  ]
}
```

### Key Principles

1. **Type** - Use `registry:component` for single, `registry:block` for layouts
2. **retro.css required** - Always include in files array
3. **Target path** - Same path for source and target
4. **Categories** - Use `gaming` for retro-themed blocks
5. **Dependencies** - List base shadcn/ui components (not 8-bit)
6. **Description** - Clear, concise for CLI output
7. **Files order** - Component first, retro.css last

### Adding a New Component

1. Create component in `components/ui/8bit/component.tsx`
2. Create documentation in `content/docs/components/component.mdx`
3. Add entry to `registry.json`:
   - Copy existing component as template
   - Update name, title, description
   - Set correct registryDependencies
   - Include retro.css in files
4. Test: `pnpm dlx shadcn@latest add @8bitcn/component`

### Reference

- `registry.json` - Full component registry
- `content/docs/components/*.mdx` - Component documentation

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…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.