PHPackages                             alenadashko/filament-dropdown-checkbox-list - 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. [Templating &amp; Views](/categories/templating)
4. /
5. alenadashko/filament-dropdown-checkbox-list

ActiveLibrary[Templating &amp; Views](/categories/templating)

alenadashko/filament-dropdown-checkbox-list
===========================================

A searchable dropdown CheckboxList component for Filament v3

v1.0.5(1w ago)06↓100%MITBladePHP ^8.1

Since May 25Pushed 1w agoCompare

[ Source](https://github.com/Alena009/filament-dropdown-checkbox-list)[ Packagist](https://packagist.org/packages/alenadashko/filament-dropdown-checkbox-list)[ RSS](/packages/alenadashko-filament-dropdown-checkbox-list/feed)WikiDiscussions main Synced 1w ago

READMEChangelogDependencies (1)Versions (7)Used By (0)

Filament Dropdown Checkbox List
===============================

[](#filament-dropdown-checkbox-list)

A searchable dropdown CheckboxList component for Filament v3.

Wraps a standard `CheckboxList` inside a dropdown trigger with badge-style selected value display, server-side search support, and persistent selection state.

Features
--------

[](#features)

- Dropdown trigger showing selected values as badges (up to 3), then a counter
- Server-side search via a callback
- Client-side search (default, no callback needed)
- Selected options always visible in the list regardless of search query
- Bulk toggle (select all / deselect all) scoped to visible options
- Options limit to prevent rendering thousands of items
- Full dark mode support
- Translatable strings (English and Polish included)

Requirements
------------

[](#requirements)

- PHP 8.1+
- Filament 3.x

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

[](#installation)

```
composer require alenadashko/filament-dropdown-checkbox-list
```

Usage
-----

[](#usage)

### Client-side search (simple)

[](#client-side-search-simple)

Options are loaded once, filtering happens in the browser:

```
use AlenaDashko\DropdownCheckboxList\Components\DropdownCheckboxList;

DropdownCheckboxList::make('tags')
    ->options(Tag::pluck('name', 'id'))
```

### Server-side search

[](#server-side-search)

Options are loaded from a callback on each search query. Use this for large datasets:

```
DropdownCheckboxList::make('products')
    ->searchUsing(fn (string $search) => Product::where('name', 'like', "%{$search}%")
        ->limit(50)
        ->pluck('name', 'id')
        ->toArray()
    )
    ->selectedOptionLabelsUsing(fn (array $values) => Product::whereIn('id', $values)
        ->pluck('name', 'id')
        ->toArray()
    )
```

`selectedOptionLabelsUsing` is required when using `searchUsing` — it fetches labels for already-selected values so they remain visible when the search query changes.

### Options limit

[](#options-limit)

Prevents rendering too many options at once (default: 50):

```
DropdownCheckboxList::make('categories')
    ->options(Category::pluck('name', 'id'))
    ->optionsLimit(100)
```

Isolated search state (optional)
--------------------------------

[](#isolated-search-state-optional)

By default the component stores search state in a Livewire property named `{statePath}_search`. If your Livewire component uses table filters and you want to prevent the search from interfering with them, add the `HasDropdownSearch` trait:

```
use AlenaDashko\DropdownCheckboxList\Concerns\HasDropdownSearch;

class MyListResource extends Component
{
    use HasDropdownSearch;
}
```

This stores search state in a dedicated `filterSearches` array instead.

Publishing assets
-----------------

[](#publishing-assets)

Publish views to customise the template:

```
php artisan vendor:publish --tag=dropdown-checkbox-list-views
```

Publish translations:

```
php artisan vendor:publish --tag=dropdown-checkbox-list-lang
```

Adding translations
-------------------

[](#adding-translations)

After publishing, add a new language file at:

```
lang/vendor/dropdown-checkbox-list/{locale}/messages.php

```

```
return [
    'placeholder'    => 'Select...',
    'selected_count' => 'selected',
    'no_results'     => 'No results found',
    'select_all'     => 'Select all',
    'deselect_all'   => 'Deselect all',
];
```

License
-------

[](#license)

MIT

###  Health Score

41

—

FairBetter than 87% of packages

Maintenance98

Actively maintained with recent releases

Popularity6

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity46

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% 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 ~1 days

Total

6

Last Release

11d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/0b725004d9281a8dc195a21fb6b7d4d2291a466beeab18c9c2f927fed2313346?d=identicon)[AlenaDashko](/maintainers/AlenaDashko)

---

Top Contributors

[![Alena009](https://avatars.githubusercontent.com/u/21222126?v=4)](https://github.com/Alena009 "Alena009 (8 commits)")

---

Tags

laravelcomponentformdropdowncheckboxfilament

### Embed Badge

![Health badge](/badges/alenadashko-filament-dropdown-checkbox-list/health.svg)

```
[![Health](https://phpackages.com/badges/alenadashko-filament-dropdown-checkbox-list/health.svg)](https://phpackages.com/packages/alenadashko-filament-dropdown-checkbox-list)
```

###  Alternatives

[amidesfahani/filament-tinyeditor

Filament TinyMce Editor

101399.3k7](/packages/amidesfahani-filament-tinyeditor)[andreia/filament-nord-theme

A minimalist Arctic Nord theme for FilamentPHP

13640.5k2](/packages/andreia-filament-nord-theme)[rawilk/profile-filament-plugin

Profile &amp; MFA starter kit for filament.

3913.7k](/packages/rawilk-profile-filament-plugin)[codewithdennis/filament-advanced-choice

Beautiful, customizable radio and checkbox form layouts for FilamentPHP.

992.4k1](/packages/codewithdennis-filament-advanced-choice)[filafly/brisk

A simple, friendly theme for Filament.

2215.7k2](/packages/filafly-brisk)

PHPackages © 2026

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