AlphaMoatによると、2026-09時点でTailwind v4 Shadcnのダウンロード数は3,089、スター数は1で、AIスキル全体5,078件中3,668位、開発では577件中464位です。
| プラットフォーム | インストール数 | ダウンロード数 | スター数 | コメント |
|---|---|---|---|---|
| ClawHub ↗ | 97 | 2947 | 1 | - |
| SkillHub ↗ | 102 | 3089 | 1 | — |
プラットフォームごとに集計方法と集計時点が異なります。
CSS変数によるテーマ構成を中心に、ルートレベルの色変数、@theme inlineのマッピング、基本スタイル、自動ダークモードを説明し、移行手順とよくあるビルドエラーも整理します。依存関係の導入や設定ファイル削除の例は、プロジェクトの依存やファイルを変更します。実行前に既存構成とリポジトリ規則を確認してください。
資料公開日 2026-10-29
@applyの問題を調査する。スキルのドキュメントをもとに生成した例であり、実際の実行結果ではありません。
2026-09 から集計方法を変更し、同名スキルを作者ごとに分けて集計し、全スキルを対象にしました。破線は変更前の月で、変更後のデータとは直接比較せず、変更をまたぐ増減も計算していません。
| 月 | ダウンロード数 | 前月比 | スター数 |
|---|---|---|---|
| 2026-09 | 3089 | — | 1 |
| 2026-08 | 2863 | +3.7% | 1 |
| 2026-07 | 2761 | +10.0% | 1 |
| 2026-06 | 2511 | +5.6% | 1 |
| 2026-05 | 2378 | — | 1 |
| 2026-03 | 1835 | — | 1 |
作者が公開した元のファイルをテキストのまま表示しています。AlphaMoat による編集や審査はしていません。リンクはクリックできません。コマンドは内容を確認してから実行してください。取得日 2026-10-23。
--- name: tailwind-v4-+-shadcn/ui-stack model: fast --- # Tailwind v4 + shadcn/ui Stack Production-tested setup for Tailwind v4 with shadcn/ui. Prevents 8 documented errors through a mandatory four-step architecture. ## WHAT
Complete Tailwind v4 + shadcn/ui configuration: - Four-step theming architecture (mandatory) - CSS variable-based color system - Automatic dark mode switching - Error prevention for 8 common mistakes - Migration guide from v3 - Production-ready templates ## WHEN - Starting a new React/Vite project with Tailwind v4 - Migrating from Tailwind v3 to v4 - Setting up shadcn/ui with Tailwind v4 - Debugging: colors not working, dark mode broken, build failures - Fixing `@theme inline`, `@apply`, or `@layer base` issues ## KEYWORDS tailwind v4, tailwindcss 4, shadcn, shadcn/ui, @theme inline, dark mode, css variables, vite, tw-animate-css, tailwind config, migration **Production verified:** WordPress Auditor (https://wordpress-auditor.webfonts.workers.dev) **Versions:** [email protected], @tailwindcss/[email protected] ## Installation ### OpenClaw / Moltbot / Clawbot ```bash npx clawhub@latest install tailwind-v4-shadcn ``` --- ## Quick Start ```bash # 1. Install dependencies pnpm add tailwindcss @tailwindcss/vite pnpm add -D @types/node tw-animate-css pnpm dlx shadcn@latest init # 2. Delete v3 config (v4 doesn't use it) rm tailwind.config.ts ``` **vite.config.ts:** ```typescript import { defineConfig } from 'vite' import react from '@vitejs/plugin-react' import tailwindcss from '@tailwindcss/vite' import path from 'path' export default defineConfig({ plugins: [react(), tailwindcss()], resolve: { alias: { '@': path.resolve(__dirname, './src') } } }) ``` **components.json (CRITICAL):** ```json { "tailwind": { "config": "", "css": "src/index.css", "baseColor": "slate", "cssVariables": true } } ``` --- ## The Four-Step Architecture (MANDATORY) Skipping steps breaks theming. Follow exactly: ### Step 1: Define CSS Variables at Root ```css /* src/index.css */ @import "tailwindcss"; @import "tw-animate-css"; :root { --background: hsl(0 0% 100%); --foreground: hsl(222.2 84% 4.9%); --primary: hsl(221.2 83.2% 53.3%); --primary-foreground: hsl(210 40% 98%); /* ... all light mode colors with hsl() wrapper */ } .dark { --background: hsl(222.2 84% 4.9%); --foreground: hsl(210 40% 98%); --primary: hsl(217.2 91.2% 59.8%); --primary-foreground: hsl(222.2 47.4% 11.2%); /* ... all dark mode colors */ } ``` **Critical:** Define at root level (NOT inside `@layer base`). Use `hsl()` wrapper. ### Step 2: Map Variables to Tailwind ```css @theme inline { --color-background: var(--background); --color-foreground: var(--foreground); --color-primary: var(--primary); --color-primary-foreground: var(--primary-foreground); /* ... map ALL CSS variables */ } ``` **Why:** Generates utility classes (`bg-background`, `text-primary`). Without this, utilities don't exist. ### Step 3: Apply Base Styles ```css @layer base { body { background-color: var(--background); color: var(--foreground); } } ``` **Critical:** Reference variables directly. Never double-wrap: `hsl(var(--background))`. ### Step 4: Result - Automatic Dark Mode ```tsx <div className="bg-background text-foreground"> {/* Theme switches automatically via .dark class */} </div> ``` No `dark:` variants needed for semantic colors. --- ## Critical Rules ### Always Do 1. Wrap colors with `hsl()` in `:root`/`.dark`: `--bg: hsl(0 0% 100%);` 2. Use `@theme inline` to map all CSS variables 3. Set `"tailwind.config": ""` in components.json 4. Delete `tailwind.config.ts` if exists 5. Use `@tailwindcss/vite` plugin (NOT PostCSS) ### Never Do 1. Put `:root`/`.dark` inside `@layer base` 2. Use `.dark { @theme { } }` (v4 doesn't support nested @theme) 3. Double-wrap: `hsl(var(--background))` 4. Use `tailwind.config.ts` for theme 5. Use `@apply` with `@layer base/components` classes 6. Use `dark:` variants for semantic colors --- ## Common Errors & Solutions ### Error 1: tw-animate-css Import **Error:** `Cannot find module 'tailwindcss-animate'` ```bash # Wrong (v3 package) npm install tailwindcss-animate # Correct (v4 package) pnpm add -D tw-animate-css ``` ```css @import "tailwindcss"; @import "tw-animate-css"; ``` ### Error 2: Colors Not Working **Error:** `bg-primary` doesn't apply styles **Cause:** Missing `@theme inline` mapping ```css @theme inline { --color-primary: var(--primary); /* Map ALL variables */ } ``` ### Error 3: Dark Mode Not Switching **Cause:** Missing ThemeProvider See `templates/theme-provider.tsx` and wrap your app. ### Error 4: Build Fails **Error:** `Unexpected config file` ```bash rm tailwind.config.ts # v4 doesn't use this ``` ### Error 5: @theme inline Breaks Multi-Theme **Cause:** `@theme inline` bakes values at build time Use `@theme` (without inline) for multi-theme systems: ```css /* For multi-theme (not just light/dark) */ @theme { --color-text-primary: var(--color-slate-900); } @layer theme { [data-theme="dark"] { --color-text-primary: var(--color-white); } } ``` ### Error 6: @apply Breaking **Error:** `Cannot apply unknown utility class` v4 changed `@apply` behavior: ```css /* Wrong (v3 pattern) */ @layer components { .custom-button { @apply px-4 py-2; } } /* Correct (v4 pattern) */ @utility custom-button { @apply px-4 py-2; } ``` ### Error 7: @layer base Styles Ignored **Cause:** CSS layer cascade issues ```css /* Better: Don't use @layer base for critical styles */ body { background-color: var(--background); } ``` --- ## Quick Reference | Symptom | Cause | Fix | |---------|-------|-----| | `bg-primary` doesn't work | Missing `@theme inline` | Add mapping | | Colors black/white | Double `hsl()` | Use `var(--color)` not `hsl(var(--color))` | | Dark mode stuck | Missing ThemeProvider | Wrap app | | Build fails | `tailwind.config.ts` exists | Delete file | | Animation errors | Wrong package | Use `tw-animate-css` | --- ## Tailwind v4 New Features ### OKLCH Color Space v4 uses OKLCH for perceptually uniform colors. Automatic sRGB fallbacks generated. ```css @theme { /* Modern approach */ --color-brand: oklch(0.7 0.15 250); /* Legacy (still works) */ --color-brand: hsl(240 80% 60%); } ``` ### Container Queries (Built-in) ```tsx <div className="@container"> <div className="@md:text-lg @lg:grid-cols-2"> Content responds to container width </div> </div> ``` ### Line Clamp (Built-in) ```tsx <p className="line-clamp-3">Truncate to 3 lines...</p> ``` ### Plugins ```css @import "tailwindcss"; @plugin "@tailwindcss/typography"; @plugin "@tailwindcss/forms"; ``` --- ## Migration from v3 ### Key Changes 1. Delete `tailwind.config.ts` 2. Move theme to CSS with `@theme inline` 3. Replace `tailwindcss-animate` → `tw-animate-css` 4. Replace `require()` → `@plugin` 5. `@apply` in `@layer components` → `@utility` ### Color Migration ```tsx // Before: Hardcoded + dark variants <div className="bg-blue-50 dark:bg-blue-950 text-blue-700 dark:text-blue-300"> // After: Semantic + automatic <div className="bg-info/10 text-info"> ``` ### Visual Changes - Ring width default: 3px → 1px (use `ring-3` to match v3) - Heading styles removed from Preflight (add via `@tailwindcss/typography` or custom) --- ## Files - `templates/index.css` - Complete CSS with all variables - `templates/theme-provider.tsx` - Dark mode provider - `templates/vite.config.ts` - Vite configuration - `templates/components.json` - shadcn/ui v4 config - `templates/utils.ts` - `cn()` utility - `references/architecture.md` - Deep dive on four-step pattern - `references/migration-guide.md` - Semantic color migration - `references/dark-mode.md` - Complete dark mode setup --- ## Setup Checklist - [ ] `@tailwindcss/vite` installed - [ ] `vite.config.ts` uses `tailwindcss()` plugin - [ ] `components.json` has `"config": ""` - [ ] NO `tailwind.config.ts` exists - [ ] `src/index.css` follows 4-step pattern - [ ] ThemeProvider wraps app - [ ] Theme toggle works --- ## NEVER - Put `:root` or `.dark` inside `@layer base` - Use `tailwind.config.ts` with v4 (it's ignored) - Double-wrap colors: `hsl(var(--background))` - Use `tailwindcss-animate` (use `tw-animate-css`) - Use `@apply` on `@layer base/components` classes in v4 - Skip the `@theme inline` step
gh コマンドラインで GitHub の PR チェック、ワークフロー実行、API 照会を扱うスキルです。
16 の検索エンジンをまとめて使え、API キーが不要な検索スキルです。
コマンドラインから MCP サーバーとツールを一覧、設定、認証、呼び出しします。
テキストの説明からMermaid図のコードを生成します。
管理された OAuth で YouTube Data API に接続し、動画検索とチャンネル管理を行います。
管理された OAuth 接続で GitHub REST API にアクセスします。
計画、実装、検証、テストをカバーするコーディング作業のスキルです。
Docker の基本コマンドとコンテナ作業をまとめたスキルです。
観点ごとにコードの品質と安全性を確認するレビュースキルです。
e2e-testing-patterns は重要な利用者の操作を検査する Playwright・Cypress の例です。
UI Design:レイアウト、タイポグラフィ、色、余白、アクセシビリティ、コンポーネント設計を支援します。
コードの品質に規律を定めるスキルです。
Mermaid のテキスト記法で、バージョン管理できるソフトウェア図を作ります。
データ月:2026-09 · ダウンロード数、スター数、インストール数は公開スキルレジストリ(ClawHub、SkillHub)から月単位で集計しています。詳しくはデータの方法論をご覧ください。