tailwind-css-v4-mastery by aiskillstore
>
Content & Writing
85 Stars
2 Forks
Updated Jan 19, 2026, 04:39 AM
Why Use This
This skill provides specialized capabilities for aiskillstore's codebase.
Use Cases
- Developing new features in the aiskillstore repository
- Refactoring existing code to follow aiskillstore standards
- Understanding and working with aiskillstore's codebase structure
Install Guide
2 steps- 1
Skip this step if Ananke is already installed.
- 2
Skill Snapshot
Auto scan of skill assets. Informational only.
Valid SKILL.md
Checks against SKILL.md specification
Source & Community
Skill Stats
SKILL.md 375 Lines
Total Files 1
Total Size 0 B
License MIT
---
name: tailwind-css-v4-mastery
description: >
Expert guidance for leveraging Tailwind CSS V4's new Oxide engine, CSS-first
configuration, and modern styling paradigms. This skill transforms Claude
into a Tailwind V4 architecture specialist, capable of designing component
systems, optimizing performance, and executing complex styling challenges
with precision.
version: 1.0.0
trigger_keywords:
- "tailwind v4"
- "tailwind 4"
- "css-first configuration"
- "oxide engine"
- "@theme directive"
- "tailwind migration"
- "tailwind component"
- "style system"
license: MIT
---
# Tailwind CSS V4 Mastery Skill
## Philosophy: CSS-First Thinking
Tailwind V4 represents a **philosophical shift** from JavaScript-centric utility frameworks to **CSS-native, declarative styling**. This skill installs that mental model:
- **Configuration is CSS** — `@theme {}` replaces `tailwind.config.js`
- **Speed is Architectural** — Oxide engine (Rust) replaces JavaScript parser
- **Modern Standards First** — Leverages `@property`, `color-mix()`, CSS nesting
- **Performance as a First-Class Citizen** — 10-100x faster than v3
The correct mental model for V4: **"CSS is the source of truth. JavaScript configuration is outdated."**
---
## Core Conceptual Landscape
### 1. The Oxide Engine Revolution
**What Changed:**
```
v3: JavaScript → JavaScript Parser → CSS Output
v4: CSS @theme → Rust/Oxide Engine → Optimized CSS Output
```
**Why It Matters:**
- **Performance:** 10-100x faster build times, 15-30x faster HMR
- **Simplicity:** One language (CSS) instead of two (JS + CSS)
- **Future-Proofing:** Aligned with native browser capabilities
**Mental Model:** Think of the Oxide engine as a compiler, not a preprocessor. It compiles CSS declarations into optimized output.
### 2. CSS-First Configuration Paradigm
**The Core Shift:**
| Aspect | v3 | v4 |
|--------|-----|-----|
| Config Format | JavaScript Object | CSS `@theme {}` Block |
| Location | `tailwind.config.js` | `styles.css` |
| Execution | Node.js at build time | Oxide engine |
| Debugging | Console logs, file inspection | CSS DevTools |
| Scope | Global import | CSS cascade-aware |
**Why This Matters:** CSS-first configuration is more maintainable, debuggable, and aligned with how browsers actually work. You're no longer fighting a layer of abstraction.
### 3. Browser Requirements & Modern CSS Features
Tailwind V4 **requires** modern browser capabilities:
- **Safari 16.4+** (OKLch color space, `@property`)
- **Chrome 111+** (`color-mix()`)
- **Firefox 128+** (CSS nesting)
This is intentional. V4 **assumes** modern CSS and optimizes around it. Legacy support requires v3.4.x.
---
## Procedural Workflows
### Workflow 1: Migration from V3 to V4
**Trigger:** User wants to upgrade existing Tailwind project from v3 to v4
**Steps:**
1. **Audit Phase**
- List all `tailwind.config.js` overrides
- Identify custom utilities and components
- Scan for deprecated utility usage (opacity, flex-shrink, etc.)
- Check browser support requirements
2. **Installation Phase**
```bash
npm install -D tailwindcss@latest
npm install -D @tailwindcss/vite # (or @tailwindcss/postcss or @tailwindcss/cli)
```
3. **Configuration Migration**
- Convert `theme: {}` → `@theme { --var: value; }`
- Convert `extend: {}` → Additional `--var` in `@theme`
- Replace `@tailwind base/components/utilities` → `@import "tailwindcss"`
4. **Utility Refactoring**
- `.shadow` → `.shadow-sm`
- `.rounded` → `.rounded-sm`
- `.outline-none` → `.outline-hidden`
- `.bg-opacity-*` → `.bg-black/*` (slash syntax)
5. **Validation**
- Test responsive breakpoints
- Verify dark mode
- Check custom components
- Performance baseline
**Decision Tree:**
```
Is this a new project?
├─ YES → Use V4 directly with @theme config
└─ NO → Execute migration workflow above
├─ Does v3 use custom config extensively?
│ ├─ YES → Allocate migration time, go step-by-step
│ └─ NO → Quick migration, 30 mins
└─ Are you on legacy browsers?
├─ YES → Stay on v3.4
└─ NO → Proceed with v4
```
### Workflow 2: Component System Design
**Trigger:** User wants to build reusable component library with Tailwind V4
**Steps:**
1. **Define Component Scope**
- List component primitives (Button, Card, Input, etc.)
- Identify shared styling patterns
- Plan for theme customization
2. **Create Base Theme**
```css
@import "tailwindcss";
@theme {
/* Color system */
--color-primary-*: oklch(...);
--color-neutral-*: oklch(...);
/* Spacing scale */
--spacing-xs: 0.25rem;
--spacing-sm: 0.5rem;
--spacing-md: 1rem;
/* Typography */
--font-display: "Custom", sans-serif;
--font-body: "System", sans-serif;
}
```
3. **Build Component Classes**
```css
@layer components {
.btn-primary {
@apply px-4 py-2 rounded-sm bg-primary text-white
font-semibold transition-all hover:opacity-90;
}
.card {
@apply p-6 rounded-lg bg-white shadow-md border border-gray-200;
}
}
```
4. **Establish Modifier Conventions**
- Size modifiers: `.btn-sm`, `.btn-lg`
- State modifiers: `.btn-disabled`, `.btn-loading`
- Variant modifiers: `.btn-primary`, `.btn-secondary`
5. **Document & Export**
- Create component reference
- Provide usage examples
- Document theme variables
**Output:** Production-ready component library CSS file
### Workflow 3: Performance Optimization
**Trigger:** User needs to optimize Tailwind V4 performance
**Steps:**
1. **Baseline Measurement**
- Measure current build time
- Check CSS file size
- Monitor HMR speed
2. **Plugin Selection**
- Use `@tailwindcss/vite` (fastest option)
- Enable Lightning CSS if using PostCSS
- Disable unnecessary optimizations
3. **Configuration Tuning**
```javascript
// vite.config.ts
import tailwindcss from "@tailwindcss/vite";
export default defineConfig({
plugins: [react(), tailwindcss()]
});
```
4. **CSS Variable Optimization**
- Use native CSS variables instead of computed values
- Leverage cascade for scoped themes
- Minimize `@theme` block duplication
5. **Validation**
- Verify build time improvement
- Check file size reduction
- Confirm visual consistency
**Expected Outcomes:**
- Build time: 100-500ms (vs 5-10s in v3)
- Hot reload: 50-200ms (vs 3s in v3)
- CSS size: -15-20% reduction
---
## Critical Decision Trees
### Decision 1: Plugin Selection
```
What build tool do you use?
├─ Vite (React, Vue, Svelte)
│ └─ Use @tailwindcss/vite (fastest, recommended)
├─ Webpack (NextJS, CRA)
│ └─ Use @tailwindcss/postcss
├─ Standalone/No bundler
│ └─ Use @tailwindcss/cli
└─ PostCSS pipeline
└─ Use @tailwindcss/postcss
```
### Decision 2: Configuration Approach
```
How complex is your theme?
├─ Simple (5-10 color overrides)
│ └─ Use inline @theme block in styles.css
├─ Moderate (custom colors, spacing, fonts)
│ └─ Use single @theme block with organization
├─ Complex (multi-theme, extensive customization)
│ └─ Split into @layer base blocks with [data-theme] selectors
└─ Enterprise (multiple brands)
└─ Use CSS variable strategy with fallbacks
```
### Decision 3: Component Extraction
```
When should I use @layer components?
├─ Recurring utility combinations
│ └─ YES → Extract to .btn-primary, .card, etc.
├─ One-off layouts
│ └─ NO → Use utilities directly in HTML
├─ Design system compliance needed
│ └─ YES → Extract as component class
└─ User will customize per instance
└─ NO → Leave as utility composition
```
---
## Common Gotchas & Solutions
### Gotcha 1: Expecting `tailwind.config.js` to Still Work
**Problem:** File is ignored in v4.
**Solution:** Use `@theme {}` in CSS instead.
**Prevention:** Delete `tailwind.config.js` early in migration.
### Gotcha 2: Default Border Color Breaking Layouts
**Problem:** v3 used `currentColor` (inherits text), v4 uses `#e5e7eb`.
**Solution:** Use `.border-current` if you need inherited color.
**Prevention:** Test all border utilities during migration.
### Gotcha 3: Ring Width Changed (3px → 1px)
**Problem:** Existing `.ring` classes now have thinner outlines.
**Solution:** Use `.ring-3` for old 3px behavior, `.ring-1` for new default.
**Prevention:** Find/replace `.ring` → `.ring-1` during migration.
### Gotcha 4: CSS Variables Must Have `--` Prefix
**Problem:** `@theme { color-primary: value; }` is ignored.
**Solution:** Use `@theme { --color-primary: value; }`.
**Prevention:** Always use `--` in `@theme` blocks.
### Gotcha 5: Opacity Utilities Removed
**Problem:** `.bg-opacity-50` no longer exists.
**Solution:** Use CSS color modifiers: `.bg-black/50`.
**Prevention:** Search codebase for opacity utilities and replace during migration.
---
## Reference Materials
All detailed references are stored in `references/`:
- **breaking-changes.md** — Complete list of API removals and renames
- **configuration-guide.md** — Comprehensive `@theme` setup patterns
- **utility-migration-table.md** — v3 → v4 utility mappings
- **color-space-guide.md** — OKLch, HSL, and color migration strategies
- **performance-tuning.md** — Optimization techniques and measurements
---
## When to Use This Skill
✅ **Use this skill when:**
- User asks about Tailwind V4 specifically (not v3)
- Designing component systems or styling architectures
- Migrating from Tailwind v3 to v4
- Optimizing Tailwind performance
- Troubleshooting CSS-first configuration issues
- Building design systems with Tailwind V4
- Creating custom theme configurations
❌ **Don't use this skill when:**
- User asks about Tailwind v3 or older (use general CSS knowledge)
- Question is about HTML/JavaScript/Framework-specific issues (not Tailwind's domain)
- User needs general CSS tutoring (use CSS fundamentals instead)
- Building non-web projects
---
## Execution Standards
When activated by user query:
1. **Clarify Intent** — Ask what they're building and why (component? migration? optimization?)
2. **Choose Workflow** — Route to appropriate procedural path
3. **Provide References** — Link to relevant reference materials
4. **Show Code Examples** — Concrete, copy-paste-ready examples
5. **Explain Trade-offs** — Why certain decisions matter
6. **Test Assumptions** — Verify understanding before deep work
---
## Advanced Capabilities
This skill enables Claude to:
- **Design component systems** that leverage Tailwind V4's architecture
- **Execute migrations** from v3 to v4 with minimal risk
- **Optimize builds** using Oxide engine capabilities
- **Debug CSS-first configuration** issues systematically
- **Teach Tailwind V4** philosophy to teams
- **Architect design systems** using CSS variables + Tailwind
- **Handle edge cases** around browser support and feature detection
---
## Resources & References
- Official Docs: https://tailwindcss.com/docs
- GitHub: https://github.com/tailwindlabs/tailwindcss
- Playground: https://play.tailwindcss.com
- Discord: https://tailwindcss.com/discord
---
**Skill Version:** 1.0.0
**Last Updated:** 2025-01-01
**Status:** Production Ready
Name Size