MCP HubMCP Hub
SKILL·B135D0

setup-tailwind-typescript

pjt222
업데이트됨 1 month ago
9 조회
26
3
26
GitHub에서 보기
기타reactai

정보

이 Claude Skill은 Next.js 또는 React 프로젝트에서 TypeScript와 함께 Tailwind CSS를 설정하며, 설치, 구성, 사용자 정의 테마 확장을 처리합니다. 기존 TypeScript 프로젝트에 Tailwind를 추가하거나 타입 안전한 컴포넌트 스타일링 패턴을 구축할 때 사용됩니다. 또한 이 스킬은 디자인 시스템을 위한 Tailwind 테마 커스터마이징과 플러그인 또는 확장 기능 구성에도 도움을 줍니다.

빠른 설치

Claude Code

추천
기본
npx skills add pjt222/agent-almanac -a claude-code
플러그인 명령대체
/plugin add https://github.com/pjt222/agent-almanac
Git 클론대체
git clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/setup-tailwind-typescript

Claude Code에서 이 명령을 복사하여 붙여넣어 스킬을 설치하세요

문서


name: setup-tailwind-typescript description: > Next.jsまたはReactプロジェクトでTailwind CSSとTypeScriptを設定します。 インストール、設定、カスタムテーマの拡張、コンポーネントパターン、 型安全なスタイリングユーティリティを扱います。既存のTypeScriptプロジェクトに Tailwind CSSを追加するとき、プロジェクトのデザインシステム向けにTailwind テーマをカスタマイズするとき、型安全なコンポーネントスタイリングパターンを セットアップするとき、またはTailwindプラグインや拡張機能を設定するときに使用します。 locale: ja source_locale: en source_commit: 6f65f316 translator: claude-opus-4-6 translation_date: 2026-03-16 license: MIT allowed-tools: Read Write Edit Bash Grep Glob metadata: author: Philipp Thoss version: "1.0" domain: web-dev complexity: basic language: TypeScript tags: tailwind, typescript, css, styling, configuration

TypeScriptでTailwind CSSをセットアップ

カスタムテーマ、ユーティリティ、型安全なパターンを持つTypeScriptプロジェクトにTailwind CSSを設定します。

使用タイミング

  • 既存のTypeScriptプロジェクトにTailwind CSSを追加するとき
  • プロジェクトのデザインシステム向けにTailwindテーマをカスタマイズするとき
  • 型安全なコンポーネントスタイリングパターンをセットアップするとき
  • Tailwindプラグインや拡張機能を設定するとき

入力

  • 必須: TypeScriptプロジェクト(Next.js、Vite、またはスタンドアロンReact)
  • オプション: デザインシステムトークン(色、スペーシング、フォント)
  • オプション: 含めるTailwindプラグイン

手順

ステップ1: Tailwind CSSのインストール

npm install -D tailwindcss @tailwindcss/postcss postcss

Next.jsの場合(まだ含まれていない場合):

npm install -D tailwindcss postcss autoprefixer
npx tailwindcss init -p

期待結果: tailwindcsspostcssautoprefixerが開発依存関係としてインストールされます。Next.jsの場合、npx tailwindcss init -pによりtailwind.config.tspostcss.config.jsが生成されます。

失敗時: npx tailwindcss initが失敗する場合は、まずnpm install -D tailwindcssでTailwindをインストールして再試行してください。モノリポを使用している場合は、ワークスペースのルートではなくアプリのルートディレクトリからコマンドを実行してください。

ステップ2: tailwind.config.tsの設定

import type { Config } from "tailwindcss";

const config: Config = {
  content: [
    "./src/pages/**/*.{js,ts,jsx,tsx,mdx}",
    "./src/components/**/*.{js,ts,jsx,tsx,mdx}",
    "./src/app/**/*.{js,ts,jsx,tsx,mdx}",
  ],
  theme: {
    extend: {
      colors: {
        primary: {
          50: "#eff6ff",
          100: "#dbeafe",
          500: "#3b82f6",
          600: "#2563eb",
          700: "#1d4ed8",
          900: "#1e3a5f",
        },
        secondary: {
          500: "#6366f1",
          600: "#4f46e5",
        },
      },
      fontFamily: {
        sans: ["Inter", "system-ui", "sans-serif"],
        mono: ["JetBrains Mono", "monospace"],
      },
      spacing: {
        "18": "4.5rem",
        "88": "22rem",
      },
    },
  },
  plugins: [],
};

export default config;

期待結果: tailwind.config.tscontent配列がプロジェクトのファイル位置と一致し、theme.extendにカスタム色とフォントが設定され、Configインポートで適切なTypeScript型付けがされています。

失敗時: カスタムクラスがレンダリングされない場合は、contentパスが実際のディレクトリ構造と一致するか確認してください。パスはプロジェクトルートからの相対的なglobパターンです。パスが欠けている場合、Tailwindはそれらのファイルのクラス使用をスキャンしません。

ステップ3: グローバルスタイルのセットアップ

src/app/globals.cssを編集します:

@tailwind base;
@tailwind components;
@tailwind utilities;

@layer base {
  html {
    @apply antialiased;
  }

  body {
    @apply bg-white text-gray-900 dark:bg-gray-950 dark:text-gray-100;
  }
}

@layer components {
  .btn-primary {
    @apply bg-primary-600 text-white px-4 py-2 rounded-lg
           hover:bg-primary-700 focus:outline-none focus:ring-2
           focus:ring-primary-500 focus:ring-offset-2
           transition-colors duration-200;
  }
}

期待結果: globals.cssに3つのTailwindディレクティブ(@tailwind base@tailwind components@tailwind utilities)とカスタムベースおよびコンポーネントレイヤースタイルが含まれています。ファイルはルートレイアウトでインポートされています。

失敗時: スタイルが適用されない場合は、globals.csslayout.tsx(またはPages Routerの_app.tsx)でインポートされているか確認してください。Tailwindディレクティブが存在し、コメントアウトされていないことを確認してください。

ステップ4: 型安全なユーティリティヘルパーの作成

src/lib/cn.tsを作成します:

import { type ClassValue, clsx } from "clsx";
import { twMerge } from "tailwind-merge";

export function cn(...inputs: ClassValue[]) {
  return twMerge(clsx(inputs));
}

依存関係のインストール:

npm install clsx tailwind-merge

コンポーネントでの使用:

import { cn } from "@/lib/cn";

interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
  variant?: "primary" | "secondary" | "outline";
}

export function Button({ className, variant = "primary", ...props }: ButtonProps) {
  return (
    <button
      className={cn(
        "px-4 py-2 rounded-lg font-medium transition-colors",
        variant === "primary" && "bg-primary-600 text-white hover:bg-primary-700",
        variant === "secondary" && "bg-secondary-500 text-white hover:bg-secondary-600",
        variant === "outline" && "border border-gray-300 hover:bg-gray-50",
        className
      )}
      {...props}
    />
  );
}

期待結果: src/lib/cn.tscn()関数をエクスポートします。clsxtailwind-mergeが依存関係としてインストールされています。コンポーネントがcn()を使って競合なしにクラス名をマージします。

失敗時: clsxまたはtailwind-mergeが見つからない場合はnpm install clsx tailwind-mergeを実行してください。TypeScriptがcn.tsで型エラーを報告する場合は、ClassValue型がclsxからインポートされているか確認してください。

ステップ5: ダークモードサポートの追加

tailwind.config.tsを更新します:

const config: Config = {
  darkMode: "class", // システム設定の場合は"media"
  // ... 残りの設定
};

トグルの実装:

"use client";
import { useEffect, useState } from "react";

export function ThemeToggle() {
  const [dark, setDark] = useState(false);

  useEffect(() => {
    document.documentElement.classList.toggle("dark", dark);
  }, [dark]);

  return (
    <button onClick={() => setDark(!dark)}>
      {dark ? "Light" : "Dark"} Mode
    </button>
  );
}

期待結果: ダークモードがライトとダークテーマ間で正しく切り替わります。darkクラスが<html>要素に適用され、dark:プレフィックス付きのユーティリティクラスが反応します。

失敗時: ダークモードが切り替わらない場合は、tailwind.config.tsdarkMode: "class"が設定されているか確認してください。darkクラスが<body>ではなく<html>要素に切り替えられていることを確認してください。システム設定モードの場合はdarkMode: "media"を使用してください。

ステップ6: プラグインの追加(オプション)

npm install -D @tailwindcss/typography @tailwindcss/forms
// tailwind.config.ts
import typography from "@tailwindcss/typography";
import forms from "@tailwindcss/forms";

const config: Config = {
  // ...
  plugins: [typography, forms],
};

期待結果: プラグインが開発依存関係としてインストールされ、tailwind.config.tsplugins配列に登録されています。プラグインが提供するクラス(typographyからのprose、formsからのスタイル付きフォーム要素など)がコンポーネントで使用可能です。

失敗時: プラグインクラスがレンダリングされない場合は、プラグインがインストールされ(npm ls @tailwindcss/typography)、plugins配列に追加されているか確認してください。設定変更後は開発サーバーを再起動してください。

バリデーション

  • Tailwindクラスがブラウザで正しくレンダリングされる
  • カスタムテーマ値(色、フォント、スペーシング)が機能する
  • cn()ユーティリティが競合なしにクラスをマージする
  • ダークモードが正しく切り替わる
  • TypeScriptが設定やコンポーネントでエラーを表示しない
  • 本番ビルドで未使用のスタイルが削除される

よくある落とし穴

  • コンテンツパスの欠落: クラスがレンダリングされない場合は、設定のcontent配列がファイルの場所と一致するか確認してください
  • クラスの競合: 競合するユーティリティクラスを防ぐためにtailwind-mergecn()経由)を使用してください
  • カスタム値が機能しない: カスタム値が(デフォルトを置き換える)テーマルートではなくextendの下にあることを確認してください
  • ダークモードが切り替わらない: darkMode設定とdarkクラスが<body>ではなく<html>にあることを確認してください

関連スキル

  • scaffold-nextjs-app - Tailwind設定前のプロジェクトセットアップ
  • deploy-to-vercel - スタイル付きアプリケーションのデプロイ

GitHub 저장소

pjt222/agent-almanac
경로: i18n/ja/skills/setup-tailwind-typescript
0
agentsagentskillsai-assisted-developmentclaude-codeskillsteams
FAQ

Frequently asked questions

What is the setup-tailwind-typescript skill?

setup-tailwind-typescript is a Claude Skill by pjt222. Skills package instructions and resources that Claude loads on demand, so Claude can perform setup-tailwind-typescript-related tasks without extra prompting.

How do I install setup-tailwind-typescript?

Use the install commands on this page: add setup-tailwind-typescript to Claude Code as a plugin, or clone its repository into your skills directory, then restart Claude so it picks up the skill.

What category does setup-tailwind-typescript belong to?

setup-tailwind-typescript is in the Other category, tagged react and ai.

Is setup-tailwind-typescript free to use?

Yes. setup-tailwind-typescript is listed on AIMCP and free to install. It runs inside Claude, so no separate service account is required to use the skill itself.

연관 스킬

llamaguard
기타

LlamaGuard는 폭력 및 혐오 발언 등 6가지 안전 범주에서 LLM 입력과 출력을 조정하기 위한 Meta의 70-80억 파라미터 모델입니다. 94-95% 정확도를 제공하며 vLLM, Hugging Face 또는 Amazon SageMaker를 사용해 배포할 수 있습니다. 이 기술을 사용하여 AI 애플리케이션에 콘텐츠 필터링 및 안전 가드레일을 손쉽게 통합하세요.

스킬 보기
cost-optimization
기타

이 Claude Skill은 리소스 적정화, 태깅 전략, 지출 분석을 통해 개발자들이 클라우드 비용을 최적화할 수 있도록 지원합니다. AWS, Azure, GCP에서 클라우드 비용을 절감하고 비용 거버넌스를 구현하기 위한 프레임워크를 제공합니다. 인프라 비용을 분석하거나, 리소스를 적정화하거나, 예산 제약을 충족해야 할 때 사용하세요.

스킬 보기
sports-betting-analyzer
기타

이 Claude Skill은 스프레드, 오버/언더, 프로프 베트를 포함한 스포츠 베팅 시장을 분석합니다. 역사적 추이와 상황별 통계를 검토하여 가치 베트를 발견하고, 교육적 목적으로 실행 가능한 권장 사항이 담긴 구조화된 마크다운 결과를 제공합니다. 개발자는 이 기능을 스포츠 베팅 분석 도구에 활용할 수 있으며, 단순히 엔터테인먼트/교육 목적으로만 설계되었음을 유의해야 합니다.

스킬 보기
quantizing-models-bitsandbytes
기타

이 스킬은 bitsandbytes를 사용하여 LLM을 8비트 또는 4비트 정밀도로 양자화하며, 최소한의 정확도 손실로 50-75%의 메모리 감소를 달성합니다. 제한된 GPU 메모리에서 더 큰 모델을 실행하거나 추론을 가속화하는 데 이상적이며, INT8, NF4, FP4와 같은 형식을 지원합니다. 이 스킬은 HuggingFace Transformers와 통합되어 QLoRA 학습 및 8비트 옵티마이저를 가능하게 합니다.

스킬 보기