kirschbaum-development/livewire-filters
SelectFilter, TextFilter, RangeFilter), aligning with Laravel’s component-driven architecture. This reduces boilerplate for common filtering patterns./products?category=electronics), improving SEO and shareability. This is valuable for public-facing dashboards or e-commerce filters.wire:model or similar reactive bindings. No ORM-specific constraints.public $filters = []). This may necessitate adjustments to existing Livewire components.form-input, text-sm), adding minor CSS overhead.telescope:record or Xdebug to identify bottlenecks.bg-gray-100 with Bootstrap classes).Livewire::test().wire:ignore for hybrid apps).SelectFilter, verifying reactivity and state management.public $filters = ['category' => null]).get() methods in components).Cache::remember), but avoid caching filtered results if real-time updates are critical.laravel/livewire package, proper Blade directives).php artisan vendor:publish).app/Http/Livewire.php if customizing Livewire’s global config (e.g., query string settings).TextFilter, SelectFilter) before tackling complex ones (e.g., MultiSelectFilter).assertSeeInResponse() for rendered filters).telescope:record or Laravel Debugbar.wire:debounce.500ms).kirschbaum-development/livewire-filters to composer.json with a version constraint (e.g., ^2.0). Use composer why-not to audit dependency conflicts.SelectFilter + TextFilter).wire:ignore for non-reactive elements).MultiSelectFilter) in high-traffic components.whereIn instead of where for large datasets). Use Laravel Scout or database-level filtering for scalability.wire:debounce).Cache::tags('filters')->remember()), but invalidate caches on filter changes.| Failure Scenario | Impact | Mitigation |
|---|---|---|
| Livewire component freeze | UI unresponsive | Add wire:loading states; debounce rapid inputs. |
| Malformed query strings | Broken filters or 404s | Validate URL params in booted() or use Request facade. |
| Database timeouts on complex filters | Slow responses | Optimize queries (e.g., select() columns, add indexes). |
| CSS conflicts (custom styles) | Broken filter UI | Override Tailwind classes in project’s CSS or publish views with custom styles. |
| Livewire version incompatibility | Package breaks | Pin Livewire version in composer.json; monitor for updates. |
How can I help you explore Laravel packages today?