shadcn

Manages shadcn/ui components, presets, and registries through the shadcn CLI.

1|1|Updated May 11, 2026
One-click install
npx skills add https://github.com/taxmaxi/taxmaxi --skill shadcn-taxmaxi
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: shadcn
Source: https://github.com/taxmaxi/taxmaxi/tree/main/.agents/skills/shadcn
Command: npx skills add https://github.com/taxmaxi/taxmaxi --skill shadcn-taxmaxi

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Building UI with shadcn/ui requires knowing the correct component composition, CLI commands, registry addresses, and styling conventions; this Skill encodes those rules so generated code follows the framework's actual patterns instead of hand-rolled markup. ## Core Features & Use Cases - Component Management: Search registries, preview with --dry-run/--diff, and add or update components via the shadcn CLI while preserving local modifications through smart merge. - Enforced Composition Rules: Applies critical rules for forms (FieldGroup/Field), styling (semantic tokens, gap-, size-), icons (data-icon), overlays, and chat primitives (MessageScroller, Bubble, Attachment, Marker). - Preset & Project Context: Reads project context via npx shadcn@latest info (base, iconLibrary, aliases, tailwindVersion) and handles preset switching with overwrite, partial, merge, or skip strategies. - Use Case: Ask for a settings form or a streaming chat view, and receive code that uses the correct components, validation attributes, and icon library for your project's configuration. ## Quick Start Ask the assistant to add a shadcn component or build a UI pattern, for example: create a settings form with validation using shadcn/ui in my project.

Frequently Asked Questions about shadcn

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add shadcn/ui components to my project?▼

Run npx shadcn@latest add followed by component names, registry namespaces like @magicui/item, or GitHub addresses like owner/repo/item. Use --dry-run to preview changes and --diff to compare against existing files before writing.

How do I update shadcn components without losing my local changes?▼

Run npx shadcn@latest add <component> --dry-run to see affected files, then --diff <file> to inspect upstream changes. Apply upstream updates while preserving local modifications, and never use --overwrite without explicit approval.

What is the difference between base and radix in shadcn/ui?▼

The base field in components.json determines the primitive library. Radix uses asChild for composition while Base uses render, and components like Select, ToggleGroup, Slider, and Accordion have different props between the two.

How do I apply or switch shadcn presets?▼

Use npx shadcn@latest apply <code> to overwrite an existing project's preset, or init --preset <code> --force --no-reinstall to update only config and CSS. Decode codes with preset decode and never construct preset URLs manually.

Why should forms use FieldGroup and Field instead of divs?▼

FieldGroup and Field provide consistent layout, labeling, and validation wiring in shadcn/ui. Validation requires data-invalid on the Field and aria-invalid on the control, which raw div markup does not handle.

Can I use shadcn/ui with Tailwind v3 and v4?▼

Yes, but theming differs: Tailwind v4 registers custom colors in @theme inline blocks, while v3 uses tailwind.config.js. Check the tailwindVersion field from npx shadcn@latest info to determine which approach applies.