patienceman/filtan
Filtan is a Laravel package for adding filters to Eloquent queries, letting you define reusable filter classes and apply them to models or requests. It aims to keep query filtering clean and organized, though documentation is limited.
Architecture fit
WHERE/relation clauses on an Eloquent\Builder. That is the right seam for a filter abstraction — it keeps controllers thin and keeps query composition out of models — and it composes cleanly with Laravel's existing idioms (form requests, middleware, scopes, resource classes).laravel-query-builder, Eloquentify, hand-rolled base filters). The build-vs-adopt question is really adopt-A-vs-adopt-B, and the differentiator should be the allowlist/operator model, not feature count.Integration feasibility
Technical risk
composer.json constraints against your actual upgrade horizon, not just today's runtime.Key questions
=, >, in, like with wildcards, null, date ranges), and are they validated server-side?Stack fit
Migration path
QueryFilter contract that Filtan implements. Controllers depend on the contract, not the package. This converts a potential future fork or replacement into a one-file change.Compatibility
composer require with a tight constraint), commit the lockfile, and run the app's full test suite — not just filter tests — after install.Sequencing
Maintenance
Support
Scaling
LIKE, or deep relation joins turn a cheap endpoint into a table scan under load. Enforce a filterable-column allowlist aligned with the index set, cap the number of applied filters, and instrument slow-query logging per endpoint.Failure modes
Ramp-up
Verdict
How can I help you explore Laravel packages today?