# TextArea

Long-form input with resizable room for thoughts, labels and validation.

- Family: Forms, imported from `mizu-ui` or `mizu-ui/forms`
- Docs: https://mizu.user64bit.world/components/text-area
- Source: https://github.com/0xuser64bit/mizu/blob/main/packages/mizu/src/forms/Fields.tsx

## Usage

```tsx
import { TextArea } from "mizu-ui";

export function Example() {
  return (
    <TextArea
      label="Release notes"
      name="notes"
      rows={4}
      placeholder="What changed?"
    />
  );
}
```

## Copy it with the shadcn CLI

```sh
npx shadcn@latest init 0xuser64bit/mizu/preset # once, where there is no components.json
npx shadcn@latest add 0xuser64bit/mizu/text-area
```

## Props

- `label`: `string`. Accessible label.
- `rows`: `number` (default `4`). Initial text rows.
- `...textarea`: `TextareaHTMLAttributes`. Native input events, limits and ref.

## Accessibility

Native textarea with a linked label, hint and error. Users can resize vertically.

## Motion

CSS transitions explain state changes. Reduced motion removes travel.
