Skip to content

Laravel Textarea Component

Free · MIT

A multi-line text input component with label, hint, error states, character counting, and auto-resize support.

A Textarea built for the TALL stack — Blade, Livewire 3 & 4, Alpine.js and Tailwind CSS 4. Server-rendered by default, dark-mode ready, and WCAG-minded. Drop it in with a single Blade tag: <x-aura::textarea>

Installation

composer require bluestarsystem/aura-ui

Usage

<x-aura::textarea label="Description" name="description" placeholder="Enter a description..." />

See the full API, props and live examples in the Textarea documentation.

Overview

The <x-aura::textarea> component renders a styled multi-line text input field. It supports labels, placeholder text, hint messages, validation error display, character counting with maxlength enforcement, and Alpine.js-powered auto-resize behavior. The component integrates seamlessly with Livewire via wire:model.

Props

Prop Type Default Description
label string|null null Label text displayed above the textarea.
placeholder string|null null Placeholder text shown when the textarea is empty.
hint string|null null Help text displayed below the textarea. Hidden when an error is present.
error string|null null Error message displayed below the textarea, applying error styling.
rows int 3 Number of visible text rows.
autoResize bool false When true, the textarea automatically grows in height as the user types.
characterCount bool false When true and maxlength is set, displays a live character counter.
maxlength int|null null Maximum number of characters allowed.
disabled bool false Disables the textarea, preventing user input.
readonly bool false Makes the textarea read-only.
size string 'md' Size variant. Options: sm, md, lg.

See more examples and every variant in the Textarea documentation.

Laravel-native
No JavaScript framework. Pure Blade, Livewire & Alpine.
Dark mode & themeable
Tailwind 4 CSS variables and a visual Theme Studio.
Accessible
WCAG 2.1 AA-minded, keyboard and ARIA support.