components

Define a standardized architecture for composable React components using data attributes.

Updated Sep 16, 2025
One-click install
npx skills add https://github.com/mukles/platejs-markdown-converter --skill components-mukles
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: components
Source: https://github.com/mukles/platejs-markdown-converter/tree/main/.agents/skills/components
Command: npx skills add https://github.com/mukles/platejs-markdown-converter --skill components-mukles

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This section describes a standardized approach to building reusable, accessible React components through composable patterns and a consistent data-attribute model, reducing fragmentation and increasing consistency across UI blocks.

Core Features & Use Cases

  • Establishes a pattern library for composable primitives, wrappers, and higher-level components with clear naming conventions.
  • Provides guidance on common patterns like asChild, Root/Item/Trigger/Content, and data-attribute usage to ensure accessibility and maintainability.
  • Suitable for teams building design systems, component libraries, or UI blocks that require predictable structure, testability, and accessibility.

Quick Start

Create a small composable component following the Root/Item/Trigger/Content pattern to demonstrate accessibility and reusability.

Frequently Asked Questions about components

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

FAQPage Schema
How do I build composable React components with accessible data attributes?

To build composable React components with accessible data attributes, you establish a standardized architecture using Root/Item/Trigger/Content patterns, asChild usage, and consistent data-attribute models to ensure predictable structure and accessibility across UI blocks.

When should I use the asChild pattern in a React component library?

You should use the asChild pattern in a React component library when you need to pass styling and accessibility props to a child element without rendering an extra DOM node, ensuring composable primitives remain accessible and maintainable while avoiding wrapper clutter.

What is the best way to structure accessible React component architectures?

The best way to structure accessible React component architectures is to apply clear naming conventions like Root/Item/Trigger/Content and standardize data-attribute models to reduce fragmentation and increase consistency across UI patterns and design systems.

Can I use ARIA attributes with composable React primitives?

Yes, you can use ARIA attributes with composable React primitives by defining a consistent data-attribute model that maps to ARIA properties, ensuring your UI components remain accessible and testable across different implementations and design systems.

What are the limitations of using data attributes for React component accessibility?

Using data attributes for React component accessibility requires strict naming conventions and a standardized architecture to prevent fragmentation; without consistent patterns, composable primitives may lose predictability and testability across UI blocks and higher-level components.