# Core/TextArea - Usage

TextArea component for multi-line text entry.

| Prop | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| `appearance` | `(typeof appearances)[number]` | No | `--` | Appearance of the text area.<br>@default 'default' |
| `resizable` | `boolean` | No | `--` | Whether the text area can be vertically resized by the user.<br>@default true |
| `autoSize` | `boolean \| { minRows?: number; maxRows?: number }` | No | `--` | Auto-growing height (Ant Design `Input.TextArea`–style).<br>`true` grows with content; use `{ minRows, maxRows }` to clamp height.<br>When enabled, manual vertical resize is disabled (`resize: none`). |
| `showCount` | `boolean` | No | `--` | When true, shows a character count. |
| `onChange` | `(value: string) => void` | No | `--` | Called with the new string value when the input changes. |
| `helperText` | `string` | No | `--` | Helper text below the field. Replaced by error message when status is error. Use for requirements, disclaimers. |
| `label` | `string` | No | `--` | Label for the field. Required for accessibility; use aria-label if another element acts as label. |
| `layout` | `'vertical' \| 'horizontal'` | No | `--` | Label and field layout: vertical (label above) or horizontal (label on leading side). Prefer vertical; use horizontal when space is limited. |
| `className` | `never` | No | `--` | Use `FORCE__className` instead. |
| `style` | `never` | No | `--` | Inline styles are not supported; use component props or `FORCE__className`. |
| `FORCE__className` | `string` | No | `--` | 🚨 This prop is meant to be an escape hatch. 🚨<br><br>If the desired style cannot be achieved using component props, use this as a last resort. The inner workings of Capra components are implementation details and this escape hatch gives one access to those implementation details. We cannot make any guarantees that styles will applied correctly across version updates. Please use it responsibly.<br><br>Add a CSS class to the component. |

Use `InputField` with `input={TextArea}` for label above the field, helper text, character count, and validation
appearance. Use `layout="vertical"` (default) or `layout="horizontal"` on `InputField` to match TextInput layouts.