Frontend Components

Create reusable, composable UI components with clear interfaces for React and Vue.

Updated Aug 23, 2026
One-click install
npx skills add https://github.com/elliotsaha/smt-slack-app --skill frontend-components-elliotsaha
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: Frontend Components
Source: https://github.com/elliotsaha/smt-slack-app/tree/main/.claude/skills/frontend-components
Command: npx skills add https://github.com/elliotsaha/smt-slack-app --skill frontend-components-elliotsaha

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill prevents the creation of monolithic, hard-to-maintain UI code by guiding the AI to design reusable and composable components. It automates the application of best practices for component architecture, saving development time and improving scalability.

Core Features & Use Cases

  • Reusable UI Elements: Guides the creation of components with clear interfaces.
  • Single Responsibility: Ensures components are focused on one task.
  • State Management: Provides patterns for managing component state effectively.
  • Use Case: When developing a new dashboard widget, this Skill ensures the AI breaks it down into smaller, focused components (e.g., ChartDisplay, DataGrid, FilterControls), each with well-defined props and responsibilities, making the widget easy to maintain and extend.

Quick Start

When creating a new DataTable component, ensure it accepts columns and data as props and manages its own internal sorting state.

Frequently Asked Questions about Frontend Components

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

FAQPage Schema
How do I structure React components to be reusable across projects?

Reusable React components require clear prop interfaces, single responsibilities, and explicit TypeScript typing. Design each component to handle one task—like `ChartDisplay` or `FilterControls`—with well-defined props, making them composable and easy to maintain across multiple projects.

What's the best way to manage state in Vue and React components?

Manage component state by keeping it local when possible, using hooks in React and reactive properties in Vue. Design components with single responsibilities so state changes remain predictable; pass data via props and use composition patterns to avoid prop drilling and maintain clarity.

How do I design a component library with consistent APIs?

Build consistent component libraries by defining explicit prop typing, documenting usage patterns, and applying single-responsibility principles to each component. Ensure all components follow the same naming conventions and interface patterns so developers can predict behavior and compose them predictably.

Can I apply component modularity principles to both React and Vue projects?

Yes, modularity principles—clear interfaces, single responsibilities, and composition patterns—apply across React and Vue. Both frameworks support reusable, focused components; adapt the specific syntax (hooks vs. reactive properties) while maintaining consistent design patterns.

Why should components have single responsibilities?

Single-responsibility components are easier to test, maintain, and reuse. When a component does one thing well—like sorting data or rendering a chart—it becomes predictable, testable, and composable into larger features without hidden dependencies or side effects.

What accessibility and testing considerations matter for UI components?

Reusable components must support accessibility standards and be testable in isolation. Design props and APIs to expose semantic HTML, ARIA attributes, and clear event handlers; document these so maintainers can verify accessibility and write tests without coupling to implementation details.