Agent Skills by ALSEL
Anthropic Claudeソフトウェア開発⭐ リポ 0品質スコア 50/100

shadcn-ui

shadcn/uiコンポーネントをReactプロジェクトへインストール・設定するスキルです。コンポーネントの選定、インストール順序、依存関係の管理、セマンティックトークンを用いたカスタマイズ、フォーム・データテーブル・ナビゲーション・モーダルなど定番UIのレシピをガイドします。tailwind-theme-builderでテーマ基盤を構築した後、コンポーネントの追加・フォーム構築・データテーブル作成・ナビゲーション設定を行う際にご活用ください。

description の原文を見る

Install and configure shadcn/ui components for React projects. Guides component selection, installation order, dependency management, customisation with semantic tokens, and common UI recipes (forms, data tables, navigation, modals). Use after tailwind-theme-builder has set up the theme infrastructure, when adding components, building forms, creating data tables, or setting up navigation.

SKILL.md 本文

shadcn/ui コンポーネント

テーマ化されたReactプロジェクトにshadcn/uiコンポーネントを追加します。このスキルは tailwind-theme-builder がCSS変数、ThemeProvider、ダークモードをセットアップした AFTER に実行されます。コンポーネントのインストール、カスタマイズ、およびコンポーネントを動作するパターンに組み合わせることを処理します。

前提条件: テーマインフラストラクチャが存在する必要があります (CSS変数、components.json、cn()ユーティリティ)。セットアップされていない場合は、まず tailwind-theme-builder を使用してください。

インストール順序

依存関係の順序でコンポーネントをインストールします。基盤コンポーネントを最初にインストールしてから、機能コンポーネントをインストールします:

基盤 (最初にインストール)

pnpm dlx shadcn@latest add button
pnpm dlx shadcn@latest add input label
pnpm dlx shadcn@latest add card

機能コンポーネント (必要に応じてインストール)

# Forms
pnpm dlx shadcn@latest add form        # needs: react-hook-form, zod, @hookform/resolvers
pnpm dlx shadcn@latest add textarea select checkbox switch

# Feedback
pnpm dlx shadcn@latest add toast        # needs: sonner
pnpm dlx shadcn@latest add alert badge

# Overlay
pnpm dlx shadcn@latest add dialog sheet popover dropdown-menu

# Data Display
pnpm dlx shadcn@latest add table        # for data tables, also: @tanstack/react-table
pnpm dlx shadcn@latest add tabs separator avatar

# Navigation
pnpm dlx shadcn@latest add navigation-menu command

外部依存関係

コンポーネント必須
Formreact-hook-form, zod, @hookform/resolvers
Toastsonner
Data Table@tanstack/react-table
Commandcmdk
Date Pickerdate-fns (オプション)

外部依存関係を別途インストール: pnpm add react-hook-form zod @hookform/resolvers

既知の落とし穴

これらは一般的なバグを防ぐための文書化された修正です:

Radix Select — 空の文字列なし

// 空の文字列値を使用しないでください
<SelectItem value="">All</SelectItem>           // 壊れます

// センチネル値を使用します
<SelectItem value="__any__">All</SelectItem>    // 動作します
const actual = value === "__any__" ? "" : value

React Hook Form — Null値

// {...field}をスプレッドしないでください — nullを渡してInputが拒否します
<Input
  value={field.value ?? ''}
  onChange={field.onChange}
  onBlur={field.onBlur}
  name={field.name}
  ref={field.ref}
/>

Lucide Icons — Tree-Shaking

// 動的インポートを使用しないでください — 本番環境ではアイコンがツリーシェイクされます
import * as LucideIcons from 'lucide-react'
const Icon = LucideIcons[iconName]  // 本番環境で壊れます

// 明示的なマップを使用します
import { Home, Users, Settings, type LucideIcon } from 'lucide-react'
const ICON_MAP: Record<string, LucideIcon> = { Home, Users, Settings }
const Icon = ICON_MAP[iconName]

Dialog幅のオーバーライド

// デフォルトのsm:max-w-lgはmax-w-6xlでオーバーライドされません
<DialogContent className="max-w-6xl">       // 動作しません

// 同じブレークポイント接頭辞を使用します
<DialogContent className="sm:max-w-6xl">    // 動作します

コンポーネントのカスタマイズ

shadcnコンポーネントはテーマからのセマンティックCSSトークンを使用します。カスタマイズするには:

バリアント拡張

src/components/ui/ のコンポーネントファイルを編集してカスタムバリアントを追加します:

// button.tsx — "brand"バリアントを追加
const buttonVariants = cva("...", {
  variants: {
    variant: {
      default: "bg-primary text-primary-foreground",
      brand: "bg-brand text-brand-foreground hover:bg-brand/90",
      // ... existing variants
    },
  },
})

色のオーバーライド

テーマからのセマンティックトークンを使用します — 生のTailwind色は使用しないでください:

// 生の色を使用しないでください
<Button className="bg-blue-500">             // 間違い

// セマンティックトークンを使用します
<Button className="bg-primary">              // 正解
<Card className="bg-card text-card-foreground">  // 正解

ワークフロー

ステップ1: ニーズを評価

プロジェクトが必要とするUIパターンを決定します:

ニーズコンポーネント
検証を使用したフォームForm, Input, Label, Select, Textarea, Button, Toast
ソート機能付きデータ表示Table, Badge, Pagination
管理CRUD インターフェースDialog, Form, Table, Button, Toast
マーケティング/ランディングページCard, Button, Badge, Separator
設定/環境設定Tabs, Form, Switch, Select, Toast
ナビゲーションNavigationMenu (デスクトップ), Sheet (モバイル), ModeToggle

ステップ2: コンポーネントをインストール

基盤を最初にインストールしてから、特定されたニーズの機能コンポーネントをインストールします。上記のコマンドを使用してください。

ステップ3: レシピを構築

コンポーネントを動作するパターンに組み合わせます。完全な動作例については references/recipes.md を参照してください:

  • Contact Form — Form + Input + Textarea + Button + Toast
  • Data Table — Table + Column sorting + Pagination + Search
  • Modal CRUD — Dialog + Form + Button
  • Navigation — Sheet + NavigationMenu + ModeToggle
  • Settings Page — Tabs + Form + Switch + Select + Toast

ステップ4: カスタマイズ

テーマからのセマンティックトークンを使用して、プロジェクト固有の色とバリアントを適用します。

リファレンスファイル

用途読む
コンポーネント選択、インストールコマンド、プロップreferences/component-catalogue.md
完全なUIパターンの構築references/recipes.md

ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ

詳細情報

作者
jezweb
リポジトリ
jezweb/claude-skills
ライセンス
MIT
最終更新
不明

Source: https://github.com/jezweb/claude-skills / ライセンス: MIT

関連スキル

汎用ソフトウェア開発⭐ リポ 39,967

doubt-driven-development

重要な判断はすべて、本番環境への展開前に新しい視点から対抗的レビューを実施します。速度より正確性が重要な場合、不慣れなコードを扱う場合、本番環境・セキュリティに関わるロジック・取り消し不可の操作など影響度が高い場合、または後でバグを修正するよりも今検証する方が効率的な場合に活用してください。

by addyosmani
汎用ソフトウェア開発⭐ リポ 1,175

apprun-skills

TypeScriptを使用したAppRunアプリケーションのMVU設計に関する総合的なガイダンスが得られます。コンポーネントパターン、イベントハンドリング、状態管理(非同期ジェネレータを含む)、パラメータと保護機能を備えたルーティング・ナビゲーション、vistestを使用したテストに対応しています。AppRunコンポーネントの設計・レビュー、ルートの配線、状態フローの管理、AppRunテストの作成時に活用してください。

by yysun
OpenAIソフトウェア開発⭐ リポ 797

desloppify

コードベースのヘルスチェックと技術負債の追跡ツールです。コード品質、技術負債、デッドコード、大規模ファイル、ゴッドクラス、重複関数、コードスメル、命名規則の問題、インポートサイクル、結合度の問題についてユーザーが質問した場合に使用してください。また、ヘルススコアの確認、次の改善項目の提案、クリーンアップ計画の作成をリクエストされた際にも対応します。29言語に対応しています。

by Git-on-my-level
汎用ソフトウェア開発⭐ リポ 39,967

debugging-and-error-recovery

テストが失敗したり、ビルドが壊れたり、動作が期待と異なったり、予期しないエラーが発生したりした場合に、体系的な根本原因デバッグをガイドします。推測ではなく、根本原因を見つけて修正するための体系的なアプローチが必要な場合に使用してください。

by addyosmani
汎用ソフトウェア開発⭐ リポ 39,967

test-driven-development

テスト駆動開発により実装を進めます。ロジックの実装、バグの修正、動作の変更など、あらゆる場面で活用できます。コードが正常に動作することを証明する必要がある場合、バグ報告を受けた場合、既存機能を修正する予定がある場合に使用してください。

by addyosmani
汎用ソフトウェア開発⭐ リポ 39,967

incremental-implementation

変更を段階的に実施します。複数のファイルに影響する機能や変更を実装する場合に使用してください。大量のコードを一度に書こうとしている場合や、タスクが一度では完結できないほど大きい場合に活用します。

by addyosmani
本サイトは GitHub 上で公開されているオープンソースの SKILL.md ファイルをクロール・インデックス化したものです。 各スキルの著作権は原作者に帰属します。掲載に問題がある場合は info@alsel.co.jp または /takedown フォームよりご連絡ください。
原作者: jezweb · jezweb/claude-skills · ライセンス: MIT