Character Counter plugin screenshot
Dark mode ready
Multilingual support
Supports v5.x

Character Counter

Community

A character counter for Text, Textarea and RichEditor fields

Tags: Forms Form Field
Supported versions:
4.x 3.x
Third-party plugin. This is built by the community, not the Filament team. Filament does not review, endorse, or vet the security of plugins outside the filament/ namespace. Review the source and install at your own risk. Found malware or an unresolved security issue the author won't address? Report it .
Tally Schmeits avatar Author: Tally Schmeits

Documentation

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.

The author

Tally Schmeits avatar Author: Tally Schmeits

Tally is an entrepreneur, husband, and father of three beautiful children! With his deep expertise in web development, particularly in Laravel and Filament, he has established and successfully runs his own company, Schmeits websolutions. He is committed to staying up-to-date with the latest technologies and tools, such as Filament, to deliver top-notch services to his clients.

Plugins
4
Stars
79

From the same author