| name | tailwind-css |
| description | Tailwind CSS utility-first styling. Use when building UIs with Tailwind classes, responsive design, dark mode, flexbox/grid layouts, hover/focus states, or any frontend styling with utility classes. Triggers include "Tailwind", "utility classes", "responsive design", "dark mode styling", or CSS layout questions. |
Tailwind CSS
Utility-first CSS framework. Style by combining single-purpose classes directly in markup.
Core Concepts
Utility Classes
<div class="flex items-center gap-4 p-6 bg-white rounded-xl shadow-lg">
<img class="size-12 rounded-full" src="..." />
<div>
<h3 class="text-xl font-medium text-black">Title</h3>
<p class="text-gray-500">Description</p>
</div>
</div>
State Variants
<button class="bg-sky-500 hover:bg-sky-700 focus:ring-2 active:bg-sky-800">
Save
</button>
<input class="border focus:border-blue-500 focus:ring-1" />
<button class="bg-blue-500 disabled:opacity-50 disabled:cursor-not-allowed">
Responsive (Mobile-First)
| Prefix | Min Width | CSS |
|---|
| (none) | 0 | Default (mobile) |
sm: | 640px | @media (width >= 40rem) |
md: | 768px | @media (width >= 48rem) |
lg: | 1024px | @media (width >= 64rem) |
xl: | 1280px | @media (width >= 80rem) |
2xl: | 1536px | @media (width >= 96rem) |
<div class="flex flex-col md:flex-row gap-4">
<div class="w-full md:w-1/2">...</div>
<div class="w-full md:w-1/2">...</div>
</div>
Dark Mode
<div class="bg-white dark:bg-gray-800">
<h1 class="text-gray-900 dark:text-white">Title</h1>
<p class="text-gray-500 dark:text-gray-400">Text</p>
</div>
Common Patterns
Flexbox Layout
<div class="flex items-center justify-between">
<div class="flex flex-col gap-4">
<div class="flex-1">
<div class="flex-none">
<div class="shrink-0">
Grid Layout
<div class="grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-6">
<div class="col-span-2">
Spacing
<div class="p-4">
<div class="px-6 py-4">
<div class="mt-4 mb-2">
<div class="space-y-4">
<div class="gap-4">
Sizing
<div class="w-full max-w-md">
<div class="h-screen">
<div class="size-12">
<div class="min-h-0">
Typography
<h1 class="text-2xl font-bold text-gray-900">
<p class="text-sm text-gray-500 leading-relaxed">
<span class="font-medium">
<a class="text-blue-600 hover:underline">
Cards & Containers
<div class="bg-white rounded-lg shadow-md p-6">
<div class="border border-gray-200 rounded-xl">
<div class="ring-1 ring-gray-900/5">
Arbitrary Values
<div class="w-[327px]">
<div class="bg-[#1da1f2]">
<div class="grid-cols-[1fr_2fr]">
Best Practices
- Mobile-first: Write base styles for mobile, add
sm:, md: for larger
- Avoid
@apply: Use utilities directly; extract components instead
- Consistent spacing: Use the scale (4, 6, 8, 12...) not arbitrary values
- Group related: Keep layout, spacing, colors logically grouped in class lists
References
For detailed docs, see references/ directory:
responsive.md — Breakpoints and responsive patterns
dark-mode.md — Dark mode configuration
layout.md — Flexbox and grid patterns