Skip to content
Agentmart
Submit a tool

components

Guides the creation of React components using shadcn/ui as a base with compound component patterns.

Skill by ZevaGuillo

IndexedMIT
Write a review

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/zevaguillo-components

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.

We use your email only for this newsletter. Privacy

About

Guides the creation of React components using shadcn/ui as a base with compound component patterns. Use this skill when creating a new UI component, extending shadcn components, or deciding component composition strategy.

Use cases: design, frontend

No 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
Runs as
Node.js package

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/components

What's inside

Skill name
components
Description
Guides the creation of React components using shadcn/ui as a base with compound component patterns. Use this skill when creating a new UI component, extending shadcn components, or deciding component composition strategy.
License
MIT
Instructions
125 lines in SKILL.md · view on GitHub

Before installing

  • Ships executable scripts

Files (10)

  • SKILL.md
  • component-slots.md · rules/
  • compound-components.md · rules/
  • props-typing.md · rules/
  • shadcn-base.md · rules/
  • tailwind-tokens.md · rules/
  • variants-pattern.md · rules/
  • component.template.tsx · templates/
  • component.variants.ts · templates/
  • compound-component.template.tsx · templates/

SKILL.md (first lines)

# Skill: components

> React components with shadcn/ui base, compound patterns, and Tailwind semantic tokens.

## When to Apply

Activate this skill when:

- Creating a new UI component
- Extending shadcn/ui components
- Deciding component composition strategy
- Building compound components
- Implementing component variants
- Typing component props

## Quick Reference

- `[PATTERN]` Use shadcn/ui as base foundation
- `[PATTERN]` Composition over inheritance
- `[MUST]` Tailwind semantic tokens (no hardcoded values)
- `[PREFERRED]` Compound components for complex states
- `[PREFERRED]` Variants via prop, not new components
- `[MUST]` Type-safe props with interfaces
- `[MUST]` Use `cn()` for conditional classes

## Rules

| Priority | Rule | Impact | Reference File |
|----------|------|--------|-----------------|
| 1 | shadcn/ui as base | High | `rules/shadcn-base.md` |
| 2 | Compound components | High | `rules/compound-components.md` |
| 3 | Tailwind semantic tokens | High | `rules/tailwind-tokens.md` |
| 4 | Component slots | Medium | `rules/component-slots.md` |
| 5 | Variants pattern | Medium | `rules/variants-pattern.md` |
| 6 | Props typing | High | `rules/props-typing.md` |

## Detail by Category

### shadcn/ui Base

Use shadcn/ui components as foundation:

- `Button`, `Input`, `Select` — Form elements
- `Card`, `Dialog`, `Sheet` — Layout containers
- `Table`, `Tabs`, `Accordion` — Complex patterns
- Always extend, never fork

### Tailwind Tokens

Use semantic tokens from shadcn theme:

- `primary`, `primary-foreground` — Main brand color
- `secondary`, `secondary-foreground` — Secondary color
- `muted`, `muted-foreground` — Subtle backgrounds
- `accent`, `accent-foreground` — Interactive highlights
- `destructive`, `destructive-foreground` — Error states
- `border`, `ring` — Borders and focus rings
- `radius` — Border radius token

**Never use:** `bg-blue-500`, `text-gray-700` — Always use theme tokens.

### Compound Components

Build complex UIs with composable parts:

```tsx
// Compound: Card
<Card>
  <CardHeader>
    <CardTitle>Title</CardTitle>
    <CardDescription>Description</CardDescription>
  </CardHeader>
  <CardContent>Content</CardContent>
  <CardFooter>Footer</CardFooter>
</Card>
```

### Variants

One prop, multiple styles — not new components:

```tsx
// ✅ One component with variants
<Button variant="default" />
<Button variant="destructive" />
<Button variant="outline" />
<Button variant="ghost" />
<Button variant="link" />

// ❌ Not: <DestructiveButton />
```

---

## Templates

- `templates/component.template.tsx` — Basic component with cn()
- `templates/compound-component.template.tsx` — Compound component pattern
- `templates/component.variants.ts` — Variants with cva

## Tailwind Theme Structure

```js
// tailwind.config.js - tokens are customizable
colors: {
  primary: { DEFAULT: "...", foreground: "..." },
  secondary: { DEFAULT: "...", foreground: "..." },
  muted: { DEFAULT: "...", foreground: "..." },
  accent: { DEFAULT: "...", foreground: "..." },
  destructive: { DEFAULT: "...", foreground: "..." },
  border: "...",
  ring: "...",
  radius: "...",
}
```

## Anti-Patterns

- ❌ Using hardcoded colors (`bg-blue-500`)

From ZevaGuillo/frontend-skills, MIT.

Signals

Stars
0
Forks
0
Open issues
0
Last commit (this folder)
Mar 30, 2026 (7 months ago)

From GitHub (fetched Oct 24, 2026).

Details

License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from ZevaGuillo

Cite this page

components skill. Agent Mart. https://agentmart.dev/skills/zevaguillo-components (last updated 2026-10-24)