fumadocs-mdx-structure について
既定の Fumadocs パターンに沿って、8-bit コンポーネントの MDX ドキュメントを作成するスキルです。必須のメタデータ、インポート、プレビュー、セクション構成を定めています。
主な機能
- 01必須の frontmatter 形式
- 02標準のインポート順
- 03コンポーネントプレビューの規約
- 04インストールと使用方法のセクション
- 05コンポーネントとブロックのファイルパス
活用シーン
- 018-bit コンポーネントの文書化
- 02コンポーネント使用例の作成
- 03ブロックのドキュメントファイル作成
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ theorcdev/ 8bitcn-ui --skill fumadocs-mdx-structureインストール後、Claude Code で/fumadocs-mdx-structureを入力して読み込まれたか確認します。
詳細
Fumadocs MDX の構造
確立されたパターンに従って、8-bit コンポーネントの構造化された MDX ドキュメントファイルを作成します。
フロントマターパターン
---
title: Component Name
description: Brief description of the 8-bit component.
---
インポートパターン
すべてのドキュメントファイルで、以下のインポートが必要です。
import { ComponentName } from "@/components/ui/8bit/component-name";
import CopyCommandButton from "@/components/copy-command-button";
import InstallationCommands from "@/components/installation-commands";
import ComponentPreview from "@/components/component-preview";
コピーコマンドボタン
フロントマターの直後に配置します。
<div className="flex flex-col md:flex-row items-center justify-end gap-2 mb-2">
<CopyCommandButton
copyCommand="pnpm dlx shadcn@latest add @8bitcn/component-name"
command="pnpm dlx shadcn@latest add @8bitcn/component-name"
/>
</div>
コンポーネントプレビュー
コンポーネントの例を囲みます。
<ComponentPreview title="8-bit ComponentName component" name="component-name">
<ComponentName>Example</ComponentName>
</ComponentPreview>
インストールセクション
## Installation
---
<InstallationCommands packageName="component-name" />
使用方法セクション
## Usage
---
```tsx
import { ComponentName } from "@/components/ui/8bit/component-name"
<ComponentName variant="outline">Example</ComponentName>
### Complete Example
```mdx
---
title: Button
description: Displays an 8-bit button component.
---
import { Button } from "@/components/ui/8bit/button";
import CopyCommandButton from "@/components/copy-command-button";
import InstallationCommands from "@/components/installation-commands";
import ComponentPreview from "@/components/component-preview";
<div className="flex flex-col md:flex-row items-center justify-end gap-2 mb-2">
<CopyCommandButton
copyCommand="pnpm dlx shadcn@latest add @8bitcn/button"
command="pnpm dlx shadcn@latest add @8bitcn/button"
/>
</div>
<ComponentPreview title="8-bit button component" name="button">
<Button>Button</Button>
</ComponentPreview>
## Installation
---
<InstallationCommands packageName="button" />
## Usage
---
```tsx
import { Button } from "@/components/ui/8bit/button"
<Button variant="outline">Button</Button>
### Key Principles
1. **Frontmatter required** - title and description are mandatory
2. **Import order** - Component → utilities → UI components
3. **Copy button** - Place before ComponentPreview
4. **ComponentPreview** - Use for all component examples
5. **Code blocks** - Use ```tsx for TypeScript examples
6. **Section separators** - Use `---` after headings
7. **8-bit imports** - Use `@/components/ui/8bit/` path
### File Location
Place documentation files in:
- `content/docs/components/component-name.mdx` for components
- `content/docs/blocks/category/block-name.mdx` for blocks
コメント
Markdown 対応