Textarea

A multi-line field with the same label and helper affordances as Input.

Use Textarea for multi-line content, notes, descriptions, and any field that benefits from the same validation anatomy as Input.

Keep it short and specific for reviewers.
Please provide at least 20 characters before submitting.
import { useState } from 'react';
import { Textarea } from '@tile-ui/react';

export default function TextareaDemo() {
	const [value, setValue] = useState('');

Registry install

pnpm dlx shadcn@latest add @tile-ui/textarea

Package usage

import { Textarea } from '@tile-ui/react';
 
export function SummaryField() {
	return <Textarea label="Summary" helperText="Keep it short and specific for reviewers." />;
}

Textarea mirrors the Input field structure, so the two can be mixed in the same form without styling differences:

<Textarea label="Question" error="Please provide at least 20 characters before submitting." defaultValue="Too short" />

Highlights

  • Multi-line content entry
  • Validation messaging with ARIA wiring
  • Same field anatomy as Input

Registry dependencies

ItemPurpose
textareaComponent source and module styles
coreFramework-agnostic logic helpers
utilsShared utility helpers
stylesShared SCSS tokens and globals

API reference

Textarea

The Textarea component wraps the native textarea element and extends React.TextareaHTMLAttributes<HTMLTextAreaElement>.

PropTypeDefaultNotes
labelstringOptional field label rendered above the textarea.
helperTextstringDisplayed below the field when there is no error.
errorstringDisplays invalid state and error messaging.
requiredbooleanfalseAdds required styling to the label.