tailwind-config
Original:🇺🇸 English
Translated
Update Tailwind CSS configuration, custom themes, and design tokens across packages. Use when adding new colors, spacing scales, or customizing the design system.
1installs
Added on
NPX Install
npx skill4agent add sgcarstrends/sgcarstrends tailwind-configTags
Translated version includes tags in frontmatterSKILL.md Content
View Translation Comparison →Tailwind CSS Configuration Skill
Configuration Structure
packages/ui/
├── tailwind.config.ts # Base config with shadcn/ui theming
└── src/styles/globals.css # CSS variables
apps/web/
├── tailwind.config.ts # Extends UI package config
└── src/app/globals.css # App-specific stylesCSS Variables
Defined in :
packages/ui/src/styles/globals.csscss
@layer base {
:root {
--background: 0 0% 100%;
--foreground: 222.2 84% 4.9%;
--primary: 222.2 47.4% 11.2%;
--primary-foreground: 210 40% 98%;
--secondary: 210 40% 96.1%;
--muted: 210 40% 96.1%;
--accent: 210 40% 96.1%;
--destructive: 0 84.2% 60.2%;
--border: 214.3 31.8% 91.4%;
--radius: 0.5rem;
}
.dark {
--background: 222.2 84% 4.9%;
--foreground: 210 40% 98%;
/* ... dark mode values */
}
}Adding Custom Colors
typescript
// tailwind.config.ts
export default {
theme: {
extend: {
colors: {
brand: {
primary: "#0070F3",
secondary: "#7928CA",
},
},
},
},
};Adding Animations
typescript
theme: {
extend: {
keyframes: {
shimmer: {
"0%": { backgroundPosition: "-200% 0" },
"100%": { backgroundPosition: "200% 0" },
},
},
animation: {
shimmer: "shimmer 2s linear infinite",
},
},
}Custom Utilities
css
/* globals.css */
@layer utilities {
.text-balance {
text-wrap: balance;
}
.scrollbar-hide {
-ms-overflow-style: none;
scrollbar-width: none;
}
}Plugins
typescript
plugins: [
require("@tailwindcss/typography"), // prose classes
require("@tailwindcss/forms"), // form resets
require("tailwindcss-animate"), // animations
]Size Utility Convention
Use instead of for equal dimensions:
size-*h-* w-*tsx
// ✅ Good
<div className="size-4">Icon</div>
<div className="size-8">Avatar</div>
// ❌ Avoid
<div className="h-4 w-4">Icon</div>Dark Mode
typescript
// tailwind.config.ts
export default {
darkMode: ["class"],
};Toggle with next-themes:
tsx
import { useTheme } from "next-themes";
const { theme, setTheme } = useTheme();Debugging
bash
# Check resolved config
npx tailwindcss config
# Watch for generated classes
TAILWIND_MODE=watch npx tailwindcss -i ./src/styles/globals.css -o ./dist/output.css --watchCommon issues:
- Classes not applying → Check content paths
- Dark mode not working → Verify and ThemeProvider
darkMode: ["class"] - Classes purged → Add to safelist or use complete class names
Best Practices
- Mobile-first - Default styles for mobile, add breakpoints up
- CSS Variables - Use for theming (enables dark mode)
- Content paths - Include all component paths
- Semantic names - Use ,
brandnotaccentblue-500 - Size utility - Use for equal dimensions
size-*
References
- Tailwind CSS: https://tailwindcss.com
- Design tokens: See skill
design-language-system