
Tailwind V4 Shadcn
- 196 repo stars
- Updated July 25, 2026
- secondsky/claude-skills
Set up Tailwind CSS v4 with shadcn/ui, Vite, and React — dark mode, CSS variable theming, and v3 migration.
About
A production-tested setup for Tailwind CSS v4 with shadcn/ui, Vite, and React. Developers use it to initialize projects, implement dark mode, debug CSS-variable and theme-switching issues, migrate from Tailwind v3, and apply v4 gotchas.
- Tailwind v4 + shadcn/ui
- Vite + React setup
- Dark mode + theming
- CSS variable architecture
Tailwind V4 Shadcn by the numbers
- Data as of Jul 28, 2026 (Skillselion catalog sync)
/plugin marketplace add secondsky/claude-skills/plugin install tailwind-v4-shadcn@claude-skillsAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| repo stars | ★ 196 |
|---|---|
| Last updated | July 25, 2026 |
| Repository | secondsky/claude-skills ↗ |
What it does
Set up Tailwind CSS v4 with shadcn/ui, Vite, and React — dark mode, CSS variable theming, and v3 migration.
README.md
Tailwind v4 + shadcn/ui Skill
Status: Production Ready ✅ Last Updated: 2025-12-04 Production Tested: WordPress Auditor (https://wordpress-auditor.webfonts.workers.dev)
Auto-Trigger Keywords
This skill should be invoked when user mentions ANY of:
Primary Triggers:
tailwind v4tailwind css v4shadcn/uishadcn uivite + react + tailwind@tailwindcss/vite
Secondary Triggers:
dark mode setuptheme providertheme switching@theme inlinecss variables not workingcolors not applyingtailwind utilities missing
Error-Based Triggers:
tw-animate-css(common error)@apply deprecateddark: variant not workingcolors all black/whitebg-primary doesn't work@import typography(wrong v4 syntax)require @tailwindcss/typography(v3 syntax in v4)prose class not working@plugin directive
What This Skill Does
Sets up production-ready Vite + React + Tailwind CSS v4 + shadcn/ui with:
✅ Correct v4 architecture - @theme inline pattern, no config file ✅ Dark mode - ThemeProvider with system/light/dark support ✅ Error prevention - Fixes tw-animate-css, duplicate @layer, @apply deprecation ✅ Semantic colors - Full color palette with proper CSS variables ✅ Path aliases - @/* imports configured ✅ TypeScript - Full type safety ✅ Templates - Proven file templates ready to copy
Known Issues This Skill Prevents
| Issue | Why It Happens | How Skill Fixes It |
|---|---|---|
tw-animate-css import error |
shadcn init adds non-existent import | Provides clean CSS template |
Duplicate @layer base |
shadcn init adds second block with @apply | Single clean @layer block |
| Colors don't work | Missing @theme inline mapping |
Complete mapping provided |
| Dark mode broken | No ThemeProvider or wrong setup | Full ThemeProvider template |
| Wrong config | tailwind.config.ts used for theme |
Empty config, CSS-only theme |
| Double hsl() wrapping | Common pattern mistake | Correct variable usage |
| Wrong plugin syntax | Using @import or require() for plugins | Correct @plugin directive documented |
When to Use This Skill
✅ Use When:
- Starting a new Vite + React project with Tailwind v4
- Adding Tailwind v4 to existing Vite project
- Migrating from Tailwind v3 to v4
- Integrating shadcn/ui components
- Setting up dark mode with theme switching
- Debugging Tailwind v4 color/theme issues
- Need production-tested v4 patterns
❌ Don't Use When:
- Using Tailwind v3 (different architecture)
- Using Next.js (different setup, use Next.js skill instead)
- Using PostCSS instead of Vite plugin
- Building pure CSS library (no React needed)
- User specifically requests manual setup for learning
Template Structure
~/.claude/skills/tailwind-v4-shadcn/
├── README.md # This file - auto-trigger keywords
├── SKILL.md # Complete documentation (623 lines)
├── templates/ # Ready-to-copy file templates
│ ├── index.css # v4 CSS architecture
│ ├── components.json # shadcn/ui v4 config
│ ├── vite.config.ts # Vite + Tailwind plugin
│ ├── tsconfig.app.json # TypeScript with aliases
│ ├── theme-provider.tsx # Dark mode provider
│ └── utils.ts # cn() utility
└── reference/ # Deep-dive docs
├── architecture.md
├── dark-mode.md
├── common-gotchas.md
└── migration-guide.md
Quick Usage
When Claude detects trigger keywords, it should:
- Confirm with user: "I found the
tailwind-v4-shadcnskill. Use it?" - Explain benefits: "This prevents tw-animate-css errors and includes dark mode"
- Use templates: Copy from
templates/directory - Follow SKILL.md: Complete step-by-step in SKILL.md
- Verify: Test dev server, check dark mode toggle
Dependencies Installed
{
"dependencies": {
"tailwindcss": "^4.1.14",
"@tailwindcss/vite": "^4.1.14",
"clsx": "^2.1.1",
"tailwind-merge": "^3.3.1",
"react": "^19.2.0",
"react-dom": "^19.2.0"
},
"devDependencies": {
"@types/node": "^24.0.0",
"@vitejs/plugin-react": "^5.0.4",
"vite": "^7.0.0",
"typescript": "~5.9.0"
}
}
Example Skill Invocation
User: "Set up a new Vite + React project with Tailwind v4"
↓
Claude: [Checks ~/.claude/skills/tailwind-v4-shadcn/]
↓
Claude: "I found the tailwind-v4-shadcn skill. Use it?
(Prevents tw-animate-css error, includes dark mode)"
↓
User: "Yes"
↓
Claude: [Uses templates/ + follows SKILL.md]
↓
Result: Working project in ~1 minute, 0 errors
Skill Metadata
name: tailwind-v4-shadcn
version: 1.0.0
category: frontend-setup
stack: [vite, react, tailwind-v4, shadcn-ui]
confidence: high # Production-tested pattern
auto_invoke_threshold: 0.7 # Invoke if 70%+ match
maintained_by: maintainers@example.com
last_tested: 2025-10-20
Related Skills
react-vite-base- Vite + React without Tailwindcloudflare-react-full-stack- Adds Cloudflare Workersreact-form-zod- React Hook Form + Zod validation
Support
- Full Documentation: See
SKILL.md(623 lines) - Troubleshooting: See
reference/common-gotchas.md - Official Docs: https://ui.shadcn.com/docs/tailwind-v4