tailwind-4
Tailwind CSS 4 patterns and best practices.
Skill by gentleman-programming
Chalk Labs
Need help deploying tailwind-4?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/camiloandresgtruniandes-tailwind-4
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: frontend
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/tailwind-4
What's inside
- Skill name
tailwind-4- Description
- Tailwind CSS 4 patterns and best practices. Trigger: When styling with Tailwind - cn(), theme variables, no var() in className.
- License
- Apache-2.0
- Metadata
- author: gentleman-programming · version: 1.1
- Instructions
- 197 lines in SKILL.md · view on GitHub
Agent Skills spec issues
- files: referenced but missing: references/frontend-pack-tailwind-design-system/overview.md
Files (1)
- SKILL.md
SKILL.md (first lines)
## Styling Decision Tree
```
Tailwind class exists? → className="..."
Dynamic value? → style={{ width: `${x}%` }}
Conditional styles? → cn("base", condition && "variant")
Static only? → className="..." (no cn() needed)
Library can't use class?→ style prop with var() constants
```
## Critical Rules
### Never Use var() in className
```typescript
// ❌ NEVER: var() in className
<div className="bg-[var(--color-primary)]" />
<div className="text-[var(--text-color)]" />
// ✅ ALWAYS: Use Tailwind semantic classes
<div className="bg-primary" />
<div className="text-slate-400" />
```
### Never Use Hex Colors
```typescript
// ❌ NEVER: Hex colors in className
<p className="text-[#ffffff]" />
<div className="bg-[#1e293b]" />
// ✅ ALWAYS: Use Tailwind color classes
<p className="text-white" />
<div className="bg-slate-800" />
```
## The cn() Utility
```typescript
import { clsx } from "clsx";
import { twMerge } from "tailwind-merge";
export function cn(...inputs: ClassValue[]) {
return twMerge(clsx(inputs));
}
```
### When to Use cn()
```typescript
// ✅ Conditional classes
<div className={cn("base-class", isActive && "active-class")} />
// ✅ Merging with potential conflicts
<button className={cn("px-4 py-2", className)} /> // className might override
// ✅ Multiple conditions
<div className={cn(
"rounded-lg border",
variant === "primary" && "bg-blue-500 text-white",
variant === "secondary" && "bg-gray-200 text-gray-800",
disabled && "opacity-50 cursor-not-allowed"
)} />
```
### When NOT to Use cn()
```typescript
// ❌ Static classes - unnecessary wrapper
<div className={cn("flex items-center gap-2")} />
// ✅ Just use className directly
<div className="flex items-center gap-2" />
```
## Style Constants for Charts/Libraries
When libraries don't accept className (like Recharts):
```typescript
// ✅ Constants with var() - ONLY for library props
const CHART_COLORS = {
primary: "var(--color-primary)",
secondary: "var(--color-secondary)",
text: "var(--color-text)",
gridLine: "var(--color-border)",
};
// Usage with Recharts (can't use className)
<XAxis tick={{ fill: CHART_COLORS.text }} />
<CartesianGrid stroke={CHART_COLORS.gridLine} />
```
## Dynamic Values
```typescript
// ✅ style prop for truly dynamic values
<div style={{ width: `${percentage}%` }} />
<div style={{ opacity: isVisible ? 1 : 0 }} />
// ✅ CSS custom properties for theming
<div style={{ "--progress": `${value}%` } as React.CSSProperties} />
```
## Common Patterns
### Flexbox
```typescript
<div className="flex items-center justify-between gap-4" />
<div className="flex flex-col gap-2" />
<div className="inline-flex items-center" />
```
### Grid
```typescript
<div className="grid grid-cols-3 gap-4" />
<div className="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-6" />From CamiloAndresGTRUniandes/lucy-ai, Apache-2.0.
More from CamiloAndresGTRUniandes/lucy-ai
- 0.605score
igniteui-angular-theming
imported-and-adapted-by-lucy-camilo
Ignite UI for Angular theming: palettes, Sass themes, typography, elevations, component tokens, dark/light themes, spacing, sizing, and roundness.
SkillBFreshness: B★ 19Claude Code +9 - 0.605score
igniteui-angular-components
imported-and-adapted-by-lucy-camilo
Ignite UI for Angular non-grid UI components: setup, forms, layouts, feedback, data display, directives, charts, Dock/Layout/Tile managers.
SkillBFreshness: B★ 19Claude Code +9 - 0.605score
igniteui-angular-generate-from-image-design
imported-and-adapted-by-lucy-camilo
Implement Angular views from design images using Ignite UI Angular components and theming.
SkillBFreshness: B★ 19Claude Code +9 - 0.605score
azure-devops-cli
imported-and-adapted-by-lucy-camilo
Manage Azure DevOps resources via CLI including projects, repos, pipelines, builds, pull requests, work items, artifacts, and service endpoints.
SkillBFreshness: B★ 19Claude Code +9 - 0.605score
igniteui-angular-grids
imported-and-adapted-by-lucy-camilo
Ignite UI for Angular data grids: flat, tree, hierarchical, pivot, grid lite, columns, editing, selection, grouping, export, remote data, paging, state, sizing.
SkillBFreshness: B★ 19Claude Code +9 - 0.604score
lucy-agent
lucy-ai
Lucy-ai's own agent ecosystem installer, updater, and verifier.
SkillBFreshness: B★ 19Claude Code +9 - 0.603score
ado-effort-estimation
imported-and-adapted-by-lucy-camilo
Estimate Azure Boards work with a mandatory clarifying-question gate and story-point guardrails.
SkillBFreshness: B★ 19Claude Code +9 - 0.603score
git-commit
imported-and-adapted-by-lucy-camilo
Create git commits with conventional commit message analysis, safe staging, and logical grouping.
SkillBFreshness: B★ 19Claude Code +9 - 0.603score
csharp-dotnet
lucy-camilo
C# and .NET patterns for OpenClaw.
SkillBFreshness: B★ 19Claude Code +9 - 0.603score
find-skills
imported-and-adapted-by-lucy-camilo
Discover, evaluate, and install agent skills when the user asks for new capabilities, asks whether a skill exists, shares a skill archive, or wants help…
SkillBFreshness: B★ 19Claude Code +9 - 0.603score
dotnet10-csharp14
lucy-camilo
Project-agnostic .NET 10 and C# 14 best practices: field keyword, null-conditional assignment, extension members, unbound generic nameof, runtime…
SkillBFreshness: B★ 19Claude Code +9 - 0.603score
issue-creation
imported-and-adapted-by-lucy-camilo
Create clear issue drafts with reproducible context, acceptance criteria, and definition of done.
SkillBFreshness: B★ 19Claude Code +9
Signals
- Stars
- 19
- Forks
- 2
- Open issues
- 0
- Last commit (this folder)
- Jul 29, 2026 (3 months ago)
- Last release
- Jul 31, 2026 (3 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- Version
- 1.1
- License
- Apache-2.0
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from gentleman-programming
- 0.724score
gentleman-bubbletea
gentleman-programming
Bubbletea TUI patterns for Gentleman.Dots installer.
SkillAFreshness: A★ 7.6KClaude Code +9 - 0.723score
engram-backlog-triage
gentleman-programming
Backlog triage protocol for Engram: audit open issues and PRs, classify each item, infer maintainer ideology from comments, and produce an actionable…
SkillAFreshness: A★ 7.6KClaude Code +9 - 0.720score
engram-commit-hygiene
gentleman-programming
Commit and branch naming standards for Engram contributors, enforced by GitHub rulesets.
SkillAFreshness: A★ 7.6KClaude Code +9 - 0.720score
engram-architecture-guardrails
gentleman-programming
Architecture guardrails for Engram across local store, cloud sync, dashboard, and plugins.
SkillAFreshness: A★ 7.6KClaude Code +9 - 0.720score
engram-branch-pr
gentleman-programming
PR creation workflow for Engram following the issue-first enforcement system.
SkillAFreshness: A★ 7.6KClaude Code +9 - 0.720score
engram-business-rules
gentleman-programming
Product and business-rule guardrails for Engram.
SkillAFreshness: A★ 7.6KClaude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get tailwind-4 running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
tailwind-4 skill. Agent Mart. https://agentmart.dev/skills/camiloandresgtruniandes-tailwind-4 (last updated 2026-10-24)