sidus/filter-bundle
Symfony bundle for building reusable, configurable filters over Doctrine queries and collections. Define filter sets once, then apply them from request parameters or code, keeping filtering logic out of controllers and repositories. Handy for admin listings and search screens.
where clauses per endpoint, or invest in a filter specification layer? Sidus is a reference implementation of the "invest" answer, and its structure is worth evaluating even if the code isn't adopted.Consider it only under a narrow set of conditions:
SidusFilterBundle is a Symfony bundle; using it in Laravel means bypassing the bundle wiring entirely, at which point you're consuming raw classes with no framework integration.Look elsewhere when:
spatie/laravel-query-builder, API Platform filters (Symfony), or a thin internal layer. These have active maintenance, documentation, and an answerable support channel.Recommendation: do not adopt as a dependency; use it as a design reference and build or buy a maintained alternative.
SidusFilterBundle offers a clean, well-reasoned model for list filtering — immutable filter definitions separated from per-request query handlers, with a provider-agnostic core. That separation is genuinely good architecture and worth citing when we design our own filtering layer.
As a dependency, however, it fails basic due-diligence thresholds: 1 GitHub star, 0 dependent projects, no release since June 2021, and it's a Symfony bundle rather than a Laravel package, so we'd get no framework integration out of the box. Adopting it means we own the code, the tests, and all future PHP-version and security maintenance — a permanent tax for roughly 300–500 lines of logic we could write or configure ourselves.
For engineering: treat it as a pattern reference. Evaluate spatie/laravel-query-builder for the Eloquent path against a 1–2 day spike on one representative endpoint; measure it against our actual filter complexity (nested relations, multi-tenant scoping, sortable whitelists).
Cost framing: a fork carries an estimated ongoing maintenance load of several days per year plus unbounded risk on framework upgrades; a maintained dependency carries near-zero, and a thin in-house layer carries a one-time cost of roughly one sprint.
Decision requested: approve the spike, and close the question of adopting unmaintained single-maintainer packages for core query infrastructure as a matter of policy.
How can I help you explore Laravel packages today?