schmeits/filament-character-counter

This is a Filament character counter TextField and Textarea form field for Filament v4 and v5
241,755 34
Install
composer require schmeits/filament-character-counter
Latest Version:v5.1.0
PHP:^8.2
License:MIT
Last Updated:Jul 22, 2026
Links: GitHub  ·  Packagist
Maintainer: schmeits

Filament Character Counter

Latest Version on Packagist GitHub Tests Action Status Total Downloads

This is a Filament character counter TextField, Textarea and RichEditor form field for Filament v4 and v5.

If you want to use this package with Filament v3.2 see version 1.x.

example-screenshot.png

Installation

Plugin Version Filament Version PHP Version
1.x 3.2 > 8.1
4.x 4.x > 8.2
5.x 4.x - 5.x > 8.2

You can install the package via composer:

composer require schmeits/filament-character-counter:"^5.0"

Note

  • For Filament v4 or v5, use version ^5.0
  • For Filament v3.2, use version ^1.0

You can publish the translations file with:

php artisan vendor:publish --tag="filament-character-counter-translations"

This is the contents of the published translation file:

return [
    'character_seperator' => ' / ',
    'character_label' => 'characters',
];

Usage

use Schmeits\FilamentCharacterCounter\Forms\Components\TextInput;
use Schmeits\FilamentCharacterCounter\Forms\Components\Textarea;

TextInput::make('title')
    ->characterLimit(50),

Textarea::make('description')
    ->characterLimit(155),

RichEditor::make('content')
    ->characterLimit(155),

maxLength can also be used to limit the maximum number of characters, there is no need to specify the characterLimit as well.

TextInput::make('title')
    ->maxLength(50),

As an additional option, you can place the counter within your component using:

TextInput::make('title')
    ->showInsideControl(true)
    ->characterLimit(50),

You can also conditionally show or hide the coutner on a per-field basis:

// Hide the counter on this field
TextInput::make('slug')
    ->showCharacterCounter(false)
    ->characterLimit(100),

// Conditionally display via Closure
Textarea::make('bio')
    ->showCharacterCounter(fn (Get $get) => $get('is_pulic'))
    ->characterLimit(255),

Testing

composer test

Changelog

Please see CHANGELOG for more information on what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Security Vulnerabilities

Please review our security policy on how to report security vulnerabilities.

Credits

License

The MIT License (MIT). Please see License File for more information.

Related Packages

jeffersongoncalves/filament-refresh-sidebar

Automatically refresh the Filament sidebar navigation when certain events occur,...

1,769 10
fawaziwalewa/filament-icon-picker

A beautiful icon picker field for FilamentPHP v5 with support for Heroicons, Luc...

1,226 5
croustibat/filament-jobs-monitor

Background Jobs monitoring like Horizon for all drivers for FilamentPHP

347,971 276
tallcms/cms

TallCMS - A modern CMS for Filament admin panels. Works standalone or as a plugi...

1,552 5
osama-dev/filament-calculator-action

Dynamic real-time calculator action for Filament v3 & v4 — instant client-side a...

9 14