Primitive / Atomstable
Textarea
Multi-line input with glass, liquid, matte, and utility variants.
@glinui/uiComponent: textarea
Installation
Install from the package for shared ownership or from the registry for copy-paste control.
Package Manager
pnpm add @glinui/ui @glinui/tokensRegistry
pnpm dlx @glinui/cli@latest add textareaUsage
Basic
TSX
1import { Textarea } from "@glinui/ui"23export function Demo() {4 return <Textarea placeholder="Share your feedback..." />5}
Custom Rows
TSX
1import { Textarea } from "@glinui/ui"23export function Demo() {4 return <Textarea placeholder="Write a longer message..." rows={8} />5}
Variants
TSX
1import { Textarea } from "@glinui/ui"23export function Demo() {4 return (5 <div className="space-y-3">6 <Textarea variant="glass" placeholder="Glass textarea" />7 <Textarea variant="liquid" placeholder="Liquid textarea" />8 <Textarea variant="matte" placeholder="Matte textarea" />9 </div>10 )11}
Accessibility
- Native `textarea` semantics.
- Pair with `<label>` or `aria-label` for screen readers.
Keyboard Interactions
| Key | Action |
|---|---|
| Tab | Move focus to the textarea. |
ARIA Attributes
- `role="textbox"` native
- `aria-invalid` for validation
Reduced Motion
No animation dependencies.
API Reference
| Prop | Type | Required | Default | Description |
|---|---|---|---|---|
variant | "default" | "glass" | "frosted" | "liquid" | "matte" | "outline" | "ghost" | "underline" | "filled" | No | default | Visual treatment. |
size | "sm" | "md" | "lg" | No | md | Text size and inner spacing. |
rows | number | - | 4 | Number of visible text lines. |
disabled | boolean | - | false | Disables interaction. |
placeholder | string | - | - | Placeholder text. |
Source
Import directly from the package or browse the source on GitHub. Click any file to view it.
Import
import { Textarea } from "@glinui/ui"Source Files
Dependencies
@glinui/uiGenerated API Snapshot
Beta
Generated API Snapshot
BetaAuto-extracted from TypeScript source in packages/ui/src/components/textarea.tsx. This section is in beta and may lag behind hand-curated docs. Regenerate with pnpm --filter @glinui/docs api:generate.
Generated: 2026-02-19T17:59:28.468Z · Full index: /docs/api-metadata
Primary Props Type
TextareaProps
TextareaProps
| Prop | Type | Required | Default | Description |
|---|---|---|---|---|
size | "sm" | "md" | "lg" | No | "md" | Variant option from textareaVariants. |
variant | "default" | "glass" | "frosted" | "liquid" | "matte" | "outline" | "ghost" | "underline" | "filled" | No | "default" | Variant option from textareaVariants. |