Forms
Textarea
Multiline text input with label, error state, and configurable resize behavior
Quick Preview
Installation
// Copy the Textarea component fromsrc/components/forms/Textarea.tsx
Usage
import { Textarea } from '@/components/forms/Textarea'<Textarealabel="Description"placeholder="Tell us about yourself..."rows={4}/>
Examples
Error State
Feedback cannot be empty.
Resize Options
Character Counter Pattern
200
Disabled
Prompt Preview
Copy a prompt that recreates this UI
Paste this into your AI coding assistant to generate code that closely matches the reference, including color, size, shape, typography, spacing, and polish.
Copy-ready AI prompt
Starts from the current visual reference and project constraints.
Tweak only product-specific copy or data after the first generation pass.
Props
| Prop | Type | Default | Description |
|---|---|---|---|
label | string | - | Label text above the textarea |
error | string | - | Error message shown below |
resize | "none" | "vertical" | "horizontal" | "both" | "vertical" | CSS resize behavior |
rows | number | 4 | Initial number of visible rows |
disabled | boolean | - | Disable the textarea |
...rest | React.TextareaHTMLAttributes | - | All native textarea props |
Features
- โLabel and error message
- โFour resize options
- โExtends native textarea attributes
- โDisabled state
- โforwardRef support
- โClient Component