PHPackages                             schmeits/filament-character-counter - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. schmeits/filament-character-counter

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

schmeits/filament-character-counter
===================================

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

v5.1.0(2w ago)34226.4k↓49.9%17[3 PRs](https://github.com/schmeits/filament-character-counter/pulls)6MITBladePHP ^8.2CI failing

Since Apr 24Pushed 4d ago2 watchersCompare

[ Source](https://github.com/schmeits/filament-character-counter)[ Packagist](https://packagist.org/packages/schmeits/filament-character-counter)[ Docs](https://github.com/schmeits/filament-character-counter)[ GitHub Sponsors](https://github.com/schmeits)[ RSS](/packages/schmeits-filament-character-counter/feed)WikiDiscussions main Synced 3d ago

READMEChangelog (10)Dependencies (38)Versions (43)Used By (6)

Filament Character Counter
==========================

[](#filament-character-counter)

[![Latest Version on Packagist](https://camo.githubusercontent.com/4ccf86713a77e45a24ddd9872ad2274262c0537bc307269e750c5a050abba379/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f7363686d656974732f66696c616d656e742d6368617261637465722d636f756e7465722e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/schmeits/filament-character-counter)[![GitHub Tests Action Status](https://camo.githubusercontent.com/10b115d9379635b8d1b1afcf3219bc8e0e609629ab9796174ad612aaf126a8ba/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f7363686d656974732f66696c616d656e742d6368617261637465722d636f756e7465722f72756e2d74657374732e796d6c3f6272616e63683d6d61696e266c6162656c3d7465737473267374796c653d666c61742d737175617265)](https://github.com/schmeits/filament-character-counter/actions?query=workflow%3Arun-tests+branch%3Amain)[![Total Downloads](https://camo.githubusercontent.com/5d009d073ece4454e251156974c857d424fe150a92a3f167ea9ed8e21d87520b/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f7363686d656974732f66696c616d656e742d6368617261637465722d636f756e7465722e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/schmeits/filament-character-counter)

This is a [Filament](https://filamentphp.com/) 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](https://github.com/schmeits/filament-character-counter/raw/main/docs-assets/screenshots/example-screenshot.png)](https://github.com/schmeits/filament-character-counter/raw/main/docs-assets/screenshots/example-screenshot.png)

Installation
------------

[](#installation)

Plugin VersionFilament VersionPHP Version1.x3.2&gt; 8.14.x4.x&gt; 8.25.x4.x - 5.x&gt; 8.2You 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
-----

[](#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
-------

[](#testing)

```
composer test
```

Changelog
---------

[](#changelog)

Please see [CHANGELOG](CHANGELOG.md) for more information on what has changed recently.

Contributing
------------

[](#contributing)

Please see [CONTRIBUTING](.github/CONTRIBUTING.md) for details.

Security Vulnerabilities
------------------------

[](#security-vulnerabilities)

Please review [our security policy](../../security/policy) on how to report security vulnerabilities.

Credits
-------

[](#credits)

- [Tally Schmeits](https://github.com/schmeits)
- Inspired on [the package](https://github.com/sweebee/filament-char-counter) by Wiebe Nieuwenhuis
- [All Contributors](../../contributors)

License
-------

[](#license)

The MIT License (MIT). Please see [License File](LICENSE.md) for more information.

###  Health Score

63

—

FairBetter than 99% of packages

Maintenance98

Actively maintained with recent releases

Popularity48

Moderate usage in the ecosystem

Community31

Small or concentrated contributor base

Maturity66

Established project with proven stability

 Bus Factor1

Top contributor holds 56.2% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~46 days

Recently: every ~91 days

Total

18

Last Release

15d ago

Major Versions

1.3.4 → 4.0.02025-06-18

v4.0.0-beta2 → v5.0.02026-01-30

PHP version history (2 changes)1.0.0PHP ^8.1

v5.0.0PHP ^8.2

### Community

Maintainers

![](https://www.gravatar.com/avatar/f1103cf2205326b63f12075bfa1ebb0132d146d052222f6b847d86d62c5d2514?d=identicon)[schmeits](/maintainers/schmeits)

---

Top Contributors

[![schmeits](https://avatars.githubusercontent.com/u/3034840?v=4)](https://github.com/schmeits "schmeits (82 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (30 commits)")[![github-actions[bot]](https://avatars.githubusercontent.com/in/15368?v=4)](https://github.com/github-actions[bot] "github-actions[bot] (24 commits)")[![edeoliv](https://avatars.githubusercontent.com/u/76831154?v=4)](https://github.com/edeoliv "edeoliv (1 commits)")[![Hamoi1](https://avatars.githubusercontent.com/u/92602172?v=4)](https://github.com/Hamoi1 "Hamoi1 (1 commits)")[![lhilton](https://avatars.githubusercontent.com/u/745338?v=4)](https://github.com/lhilton "lhilton (1 commits)")[![masterix21](https://avatars.githubusercontent.com/u/6555012?v=4)](https://github.com/masterix21 "masterix21 (1 commits)")[![mediatorviolet](https://avatars.githubusercontent.com/u/70049513?v=4)](https://github.com/mediatorviolet "mediatorviolet (1 commits)")[![tgeorgel](https://avatars.githubusercontent.com/u/11785727?v=4)](https://github.com/tgeorgel "tgeorgel (1 commits)")[![CharlieEtienne](https://avatars.githubusercontent.com/u/9772943?v=4)](https://github.com/CharlieEtienne "CharlieEtienne (1 commits)")[![tommie1001](https://avatars.githubusercontent.com/u/50906358?v=4)](https://github.com/tommie1001 "tommie1001 (1 commits)")[![devOMAR-2](https://avatars.githubusercontent.com/u/93110311?v=4)](https://github.com/devOMAR-2 "devOMAR-2 (1 commits)")[![dissto](https://avatars.githubusercontent.com/u/11778632?v=4)](https://github.com/dissto "dissto (1 commits)")

---

Tags

filamentfilament-pluginfilamentphplaravelfilamentfilament-pluginschmeitsfilament-character-counter

###  Code Quality

TestsPest

Code StyleLaravel Pint

### Embed Badge

![Health badge](/badges/schmeits-filament-character-counter/health.svg)

```
[![Health](https://phpackages.com/badges/schmeits-filament-character-counter/health.svg)](https://phpackages.com/packages/schmeits-filament-character-counter)
```

###  Alternatives

[codewithdennis/filament-select-tree

The multi-level select field enables you to make single selections from a predefined list of options that are organized into multiple levels or depths.

329530.5k29](/packages/codewithdennis-filament-select-tree)[ysfkaya/filament-phone-input

A phone input component for Laravel Filament

3161.3M25](/packages/ysfkaya-filament-phone-input)[rawilk/profile-filament-plugin

Profile &amp; MFA starter kit for filament.

3914.6k](/packages/rawilk-profile-filament-plugin)[croustibat/filament-jobs-monitor

Background Jobs monitoring like Horizon for all drivers for FilamentPHP

274326.6k8](/packages/croustibat-filament-jobs-monitor)[stephenjude/filament-feature-flags

Filament implementation of feature flags and segmentation with Laravel Pennant.

122177.8k1](/packages/stephenjude-filament-feature-flags)[wsmallnews/filament-nestedset

Filament nestedset tree builder powered by kalnoy/nestedset with Filament v4 and v5 support

197.8k19](/packages/wsmallnews-filament-nestedset)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
