frontend-ui-engineering

Builds accessible, responsive UI components following design system standards.

7|Updated Jan 11, 2026
One-click install
npx skills add https://github.com/peterblazejewicz/claude-plugins --skill frontend-ui-engineering-peterblazejewicz
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: frontend-ui-engineering
Source: https://github.com/peterblazejewicz/claude-plugins/tree/main/sync-state/dotnet-skills/vendor/agent-skills/skills/frontend-ui-engineering
Command: npx skills add https://github.com/peterblazejewicz/claude-plugins --skill frontend-ui-engineering-peterblazejewicz

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? AI-generated interfaces often look generic, ignore accessibility requirements, and break on different screen sizes. This Skill guides the creation of production-quality user interfaces that follow real design systems, meet WCAG 2.1 AA accessibility standards, and handle loading, error, and empty states properly. ## Core Features & Use Cases - Component Architecture Guidance: Enforces composition over configuration, colocated file structures, and separation of data fetching from presentation in React/TypeScript components. - Accessibility Enforcement: Provides concrete patterns for keyboard navigation, ARIA labels, focus management, and meaningful empty/error states that meet WCAG 2.1 AA. - Design System Adherence: Identifies and eliminates common "AI aesthetic" anti-patterns (purple gradients, excessive rounding, stock card grids) in favor of consistent spacing scales, semantic color tokens, and type hierarchies. - Use Case: When asked to build a task list page, the Skill produces a responsive layout with skeleton loading states, optimistic updates via React Query, keyboard-accessible controls, and styling drawn from the project's design tokens rather than arbitrary values. ## Quick Start Ask the assistant to build a new UI component or page, such as a responsive task list with loading and empty states, and it will apply these frontend engineering standards automatically.

Frequently Asked Questions about frontend-ui-engineering

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

FAQPage Schema
How do I build accessible React components?

Use semantic HTML elements like button instead of div for interactions, add aria-label to icon-only controls, associate labels with form inputs via htmlFor, and manage focus when dialogs open. Verify by tabbing through the page and testing with a screen reader.

How to manage state in React components?

Choose the simplest approach: useState for local UI state, lifted state for 2-3 siblings, Context for read-heavy values like theme, URL search params for shareable filters, React Query or SWR for server data, and Zustand or Redux only for complex app-wide state.

What is the AI aesthetic in generated UI and how do I avoid it?

The AI aesthetic includes purple gradients, excessive border rounding, stock card grids, and oversized uniform padding. Avoid it by using the project's actual color palette, spacing scale, and border-radius tokens instead of inventing arbitrary values.

Does this guidance work with Tailwind CSS?

Yes, the examples use Tailwind utility classes with mobile-first responsive breakpoints like grid-cols-1 sm:grid-cols-2 lg:grid-cols-3. The same principles apply to any styling approach as long as spacing and color values come from a consistent design system scale.

Why should UI components handle empty and error states?

Blank screens confuse users and hide failures. Every list or data view should render a meaningful empty state with a call to action, an error state with retry, and a skeleton loading state, so the interface communicates status at all times.

When should I split a React component into smaller pieces?

Split components exceeding roughly 200 lines, components doing both data fetching and rendering, or components passing props more than three levels deep. Separate container components that fetch data from presentational components that render it.