This enforces Tailwind 4 best practices with a decision tree approach that keeps you from shooting yourself in the foot. The core rule: never use var() or hex colors in className attributes. Use Tailwind's semantic classes instead, reserve var() for library props that can't accept className (like Recharts), and only reach for the style prop when values are truly dynamic. It's opinionated about when to use the cn() utility versus plain className, which is honestly helpful since people tend to wrap everything unnecessarily. The pattern library covers the usual suspects like responsive design and dark mode, but the real value is in the constraint system that prevents the CSS-in-className antipatterns that creep into codebases.

skills.sh installs
614
GitHub stars
15.2K
last updated
Aug 21, 2026

Install

$ npx -y skills add prowler-cloud/prowler --skill tailwind-4 --agent claude-code

Installs into .claude/skills of the current project.

Files

Tailwind 4 Setup (CSS-first, no tailwind.config)

  • Config lives in CSS: ui/styles/globals.css starts with @import "tailwindcss"; plus @plugin, @source, @custom-variant, @theme, @utility.
  • PostCSS plugin is @tailwindcss/postcss (ui/postcss.config.js). There is no tailwind.config.*; do not create one.
  • Design tokens are declared in @theme (--color-bg-neutral-primary: ...) and become utilities (bg-bg-neutral-primary, text-text-neutral-secondary, border-border-neutral-secondary).
  • Dark mode is class-based: @custom-variant dark (&:where(.dark, .dark *)); (toggled by next-themes).
  • New utilities use @utility name { ... }, not @layer utilities + @apply hacks.

Prowler UI: use the semantic token utilities above. Raw palette classes (bg-slate-800, bg-blue-500) appear below only as generic Tailwind examples; in ui/ they are not allowed (see prowler-ui Design System Discipline).

Styling Decision Tree

Sponsors

Details

Repository
github.com/prowler-cloud/prowler
Categories
Frontend Development, Cloud & Infrastructure
First seen
Jun 3, 2026

More from prowler-cloud/prowler

All 6
1getsentry avatarsentry-react-sdkgetsentry/sentry-agent-skillsFull Sentry SDK setup for React. Use when asked to "add Sentry to React", "install @sentry/react", or configure error monitoring, tracing, session replay, profi586skills.sh installs
2oakoss avatarui-ux-polishoakoss/agent-skillsIterative UI/UX polishing workflow for web applications. Use when improving visual polish, refining desktop and mobile UX separately, running iterative enhancem559skills.sh installs
3aj-geddes avatarfrontend-testingaj-geddes/useful-ai-promptsImplement comprehensive frontend testing using Jest, Vitest, React Testing Library, and Cypress. Use when building robust test suites for UI and integration tes514skills.sh installs
4galaxy-dawn avatarui-ux-pro-maxgalaxy-dawn/claude-scholarThis skill should be used when the user asks to design or review a UI, create a landing page or dashboard, choose colors or typography, improve accessibility, o514skills.sh installs
5aj-geddes avatarreact-native-appaj-geddes/useful-ai-promptsBuild cross-platform mobile apps with React Native. Covers navigation with React Navigation, state management with Redux/Context API, API integration, and platf508skills.sh installs
6davila7 avatarreact-patternsdavila7/claude-code-templatesModern React patterns and principles. Hooks, composition, performance, TypeScript best practices.503skills.sh installs