component-field

Generate an fpkit-style accessible Field wrapper component for React and TypeScript.

Updated Apr 21, 2026
One-click install
npx skills add https://github.com/shawn-sandy/agentic-acss-plugins --skill component-field
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: component-field
Source: https://github.com/shawn-sandy/agentic-acss-plugins/tree/main/plugins/acss-kit/skills/component-field
Command: npx skills add https://github.com/shawn-sandy/agentic-acss-plugins --skill component-field

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill scaffolds an accessible Field wrapper that correctly associates a visible label with a single form control, preventing common form-label wiring mistakes.

Core Features & Use Cases

  • Accessible label-control association: generates a <label htmlFor={labelFor}> linked to the wrapped control’s id, supporting reliable programmatic naming and click-to-focus behavior.
  • Leaf component by design: renders only layout + label and delegates error and hint responsibilities to the wrapped Input/Select/Textarea control.
  • fpkit/acss-aligned styling hook: outputs TSX and SCSS using a consistent data-style="fields" convention and CSS variable-driven typography.

Quick Start

Ask the agent: create a Field component for an Email input with a label, using labelFor set to the wrapped control id.

Frequently Asked Questions about component-field

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

FAQPage Schema
How do I generate an accessible form field wrapper in React that binds a label to an input?

An accessible form field wrapper uses a label element with htmlFor bound to the wrapped control's id. This ensures proper programmatic naming and click-to-focus behavior for your React form layout.

What is the best way to associate a visible label with a form control in TypeScript?

The best way to associate a visible label with a form control is generating an fpkit-style wrapper that uses htmlFor={labelFor} linked to the wrapped input's id. This prevents common form-label wiring mistakes in TypeScript scaffolding.

Does my form field wrapper need to handle validation text and error messages?

Your form field wrapper does not need to handle validation text and error messages. The wrapper is a leaf component by design, rendering only layout and label, while delegating error and hint responsibilities to the wrapped Input, Select, or Textarea control.

Can I use SCSS for styling an accessible form field component?

You can use SCSS for styling an accessible form field component by writing field.module.scss or field.scss per your templates. The output uses a consistent data-style="fields" convention and CSS variable-driven typography.

Why does my wrapped form control require aria-describedby when using a field wrapper?

Your wrapped form control requires aria-describedby because the field wrapper delegates error and hint responsibilities to the child Input, Select, or Textarea. The child control must provide its own validation text and aria attributes.