vercel/components.build · Official

building-components

Guide for building modern, accessible, and composable UI components. Use when building new components, implementing accessibility, creating composable APIs, setting up design tokens, publishing to npm/registry, or writing component documentation.

All-time #1288 Trending #1081 Hot #5797 First seen Feb 4, 2026
8-week activity · all time api

Installation

$ npx skills add vercel/components.build --skill building-components

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Repository health

Stars 794
License LICENSE
Default branch main
Open issues 2
Status Active

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 2,151 B
  • docs SUMMARY.md 273 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 12,625 installs

SKILL.md

Building Components

When to use this skill

Use when the user is:

  • Building new UI components (primitives, components, blocks, templates)
  • Implementing accessibility features (ARIA, keyboard navigation, focus management)
  • Creating composable component APIs (slots, render props, controlled/uncontrolled state)
  • Setting up design tokens and theming systems
  • Publishing components to npm or a registry
  • Writing component documentation
  • Implementing polymorphism or as-child patterns
  • Working with data attributes for styling/state

References

  • [definitions.mdx](./references/definitions.mdx) - Artifact taxonomy (primitives, components, blocks, templates)
  • [principles.mdx](./references/principles.mdx) - Core principles for component design
  • [accessibility.mdx](./references/accessibility.mdx) - ARIA, keyboard navigation, WCAG compliance
  • [composition.mdx](./references/composition.mdx) - Composable component patterns
  • [as-child.mdx](./references/as-child.mdx) - The as-child pattern for element polymorphism
  • [polymorphism.mdx](./references/polymorphism.mdx) - Polymorphic component patterns
  • [types.mdx](./references/types.mdx) - TypeScript typing patterns for components
  • [state.mdx](./references/state.mdx) - Controlled vs uncontrolled state management
  • [data-attributes.mdx](./references/data-attributes.mdx) - Using data attributes for styling and state
  • [design-tokens.mdx](./references/design-tokens.mdx) - Design token systems and theming
  • [styling.mdx](./references/styling.mdx) - Component styling approaches
  • [registry.mdx](./references/registry.mdx) - shadcn-style registry distribution
  • [npm.mdx](./references/npm.mdx) - Publishing components to npm
  • [marketplaces.mdx](./references/marketplaces.mdx) - Component marketplace distribution
  • [docs.mdx](./references/docs.mdx) - Writing component documentation