- Can I use friendsofvictoire/filter-widget in a Laravel application?
- No. The package is a Symfony bundle (FriendsOfVictoire/WidgetFilterBundle) built for Victoire DCMS and relies on Symfony bundle registration, the dependency injection container, Doctrine ORM, and Twig templates. None of those map onto Laravel's service container, Eloquent, or Blade, so it cannot be consumed as a library inside a Laravel app. The realistic option is to reimplement the filter concept natively.
- What does friendsofvictoire/filter-widget actually do?
- It provides a reusable filter widget for Victoire DCMS that lets a non-technical editor configure a saved filter over a content listing using taxonomy or attribute predicates. That configuration is persisted as widget settings, and the filtered results are rendered server-side through Victoire's widget and slot system. In practice it is an editor-facing filter UI plus Doctrine query assembly, tightly coupled to Victoire's widget abstraction.
- Is friendsofvictoire/filter-widget compatible with Laravel 10 or Laravel 11?
- No, and it is not compatible with any Laravel version. The bundle targets the Symfony 2.8/3.x generation and Victoire's kernel and widget contracts, so there is no service provider, facade, config file, or Blade view. Adding it to a Laravel composer.json would not produce a working filter component. Laravel 10 and 11 also require PHP 8.1+, which this package does not support.
- Is friendsofvictoire/filter-widget still maintained?
- No. The last release was published on 2016-12-22 and there has been no security patching, PHP 8 compatibility work, or maintenance since. Victoire itself is effectively dormant, and the repository has roughly 3 stars, zero dependents, and a low health score. Treat it as a legacy reference artifact rather than a dependency candidate.
- What are the best Laravel alternatives for configurable list filters?
- Build the capability natively with Eloquent query scopes, a saved-filters table, and request validation for the active filter payload. For admin UI, Laravel Filament and Laravel Nova both ship filter components that support custom and persisted filters. Spatie's query builder package and Laravel's pipeline and query-builder patterns can handle dynamic predicate assembly. All of these give you maintained, PHP 8-compatible code without Victoire's dependency tree.
- Why is a Symfony bundle listed among Laravel Composer packages?
- Catalogue entries are often keyword or tag matched, and filter widget is a generic term that pulls in Symfony, PHP, and Laravel tooling alike. The repository name FriendsOfVictoire/WidgetFilterBundle and its bundle structure make the mismatch obvious once you inspect the source. Always verify the framework target and dependency tree before evaluating a package for a Laravel stack.
- What are the transitive dependency risks of adopting this bundle?
- The real risk is not the widget code but the tree it drags in: end-of-life Symfony 2.8/3.x components and legacy Doctrine libraries that no longer receive security patches. Those packages, not the filter widget itself, represent the CVE surface. There is also no community validation, so there are no field-tested failure modes to learn from. The safest stance is not to install it anywhere.
- Can I extract just the filter logic and reuse it in Laravel?
- Practically, no. The value is concentrated in the editor-facing configuration forms and the Doctrine query assembly, both coupled to Victoire's form and widget systems. Porting would be a rewrite rather than an extraction, and a compatibility shim would likely be larger than a greenfield Laravel implementation. Borrow the UX pattern and filter semantics, then write the code fresh.
- How would I install and register the bundle if I were on Symfony?
- It is installed via Composer and registered as a bundle in the Symfony kernel, and it expects a running Victoire DCMS instance with its widget registration and template inheritance chain. You would also need Victoire's widget maps and slot/renderer conventions for it to render at all. There is no standalone Symfony usage path, and documentation is thin, so behaviour has to be reverse-engineered from source.
- How should I test a filter widget I build myself in Laravel?
- Write feature tests that assert the generated SQL or query builder state for each filter combination, plus HTTP tests that post filter payloads and assert the returned result sets. Cover authorization so users cannot filter on columns they should not see, and test empty or invalid filter input. If filters are persisted, add tests for saving, updating, and applying saved filters per user or team.