--- name: frontend-tailwind-best-practices description: Tailwind CSS patterns and conventions for frontend apps. Use when writing component styles, layouts, or working with CSS classes. --- # Tailwind CSS Best Practices Styling patterns and conventions for frontend applications. Contains 10 rules covering layout utilities, affordances, color schemes, responsive design, and className handling. ## When to Apply Reference these guidelines when: - Writing component styles with Tailwind - Creating layouts (stacks, grids, centering) - Handling responsive design - Working with color schemes - Merging className props ## Rules Summary ### Layout Utilities (CRITICAL) #### layout-stack-utilities - @rules/layout-stack-utilities.md Use custom stack utilities instead of flex classes. ```tsx // Bad
``` #### responsive-capabilities - @rules/responsive-capabilities.md Design for input capabilities (pointer/hover) instead of device labels. ```tsx ``` ## Anti-Patterns | Don't | Do | | ---------------------------------- | ---------------------- | | `flex flex-col` | `v-stack` | | `flex flex-row` | `h-stack` | | `flex items-center justify-center` | `center` | | `bg-gray-100` | `bg-neutral-100` | | `bg-[#hex]` | Use design tokens | | `className="..."` without `cn()` | `cn("...", className)` | | Inline `style` for responsive | Tailwind prefixes | ## Key Files | File | Purpose | | ------------------------- | -------------------------------- | | `tailwind.config.js` | Config, custom utilities, colors | | `app/styles/global.css` | Color scheme CSS variables | | `app/styles/tailwind.css` | Additional utilities | | `app/utils/cn.ts` | className merge utility |