Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Extra Filters Bundle Laravel Package

instacar/extra-filters-bundle

instacar/extra-filters-bundle adds practical extra filter types to Symfony admin listings, so you can narrow records by date ranges, statuses, and related values. Simple to configure and drop in, it makes large datasets easier to browse and manage.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit: instacar/extra-filters-bundle is a query-filtering utility intended to add reusable filter behavior to list endpoints, admin grids, or reporting screens. The v0.2.3 release note ("Added suppor for Symfony 6.2") is an important architectural signal: the package is described and versioned as a Symfony bundle, not a Laravel package. That reframes the fit assessment. A Symfony bundle depends on the Symfony kernel/bundle registration model and Symfony HTTP/DI components; it does not natively register with a Laravel service provider or Eloquent. In a Laravel codebase this is at best a PHP-level query helper that must be wired manually, and at worst an incompatible dependency pulling Symfony components that overlap with Laravel's own. A TPM should position it as a peripheral query-layer utility behind an internal filter contract/adapter, and should first confirm whether the filtering logic is usable standalone or is bundle-coupled.

Integration feasibility: Composer installation remains likely straightforward at the dependency level, but the practical feasibility question has changed: the package explicitly targets Symfony 6.2, and nothing in the release indicates Laravel support. For a Laravel application, feasibility is now low without a spike that proves the filter core can be used outside the Symfony bundle bootstrap. All pre-existing metadata gates remain unchanged and unresolved: license is NOASSERTION, stars are low at 9, dependents are 0, package score 0.435, and the release cadence shows a single narrow compatibility bump rather than active feature or maintenance work. Feasibility remains low-to-moderate for a Symfony-based PHP service, and low for a Laravel service until proven otherwise.

Technical risk: License ambiguity remains the top risk and can block commercial distribution or internal policy approval. The second risk is now framework mismatch: the only signal of ongoing maintenance is Symfony 6.2 compatibility, which increases the chance the package is unusable or awkward in a Laravel stack and could introduce duplicate Symfony component versions. Additional risks: version is still 0.x, so semver-breaking changes are permitted in any release; unknown test coverage and CI; undocumented PHP version constraints; typo-laden changelog ("suppor", contributor handle only) suggesting light release QA; and potential query-performance or input-handling issues if filters are exposed directly to user input. Zero dependents still means no external evidence the package survives upgrade cycles.

Key questions: What is the actual license? Does the filtering core work standalone in Laravel, or does it require the Symfony bundle/kernel? Which PHP versions and Symfony component ranges does v0.2.3 pin, and do those conflict with our existing Symfony contracts or Laravel's dependencies? Is the change in v0.2.3 purely a constraint bump, or did it alter the filter API? Is there CI, static analysis, and meaningful test coverage? How does it handle untrusted input, relationship filters, pagination, and query complexity? Who maintains it, and what is the fallback if abandoned? Does it fit our existing filter/search abstraction, or introduce a parallel pattern?

TPM recommendation: Downgrade intended usage from "possible Laravel dependency" to "reference implementation or spike only." v0.2.3 is a minor, non-breaking compatibility bump that does not clear the license gate, does not demonstrate Laravel support, and does not materially change maintenance confidence. Do not place it in a critical path or expose it broadly without a Symfony-compatibility confirmation, an internal adapter, and regression tests.

Integration Approach

Stack fit: Best fit is a Symfony 6.2-based PHP service using Doctrine/query-builder-backed filtering for admin screens or API list endpoints. It is a poor fit for Laravel applications using Eloquent, non-Laravel PHP stacks, or domains needing advanced faceting, full-text search, or cross-service query composition. If the target is Laravel, the realistic integration is importing the filter logic as a vendored/adapted component, not installing the bundle.

Migration path: No big-bang migration. Start with a bounded spike in one low-risk module — an internal admin list screen or a non-critical API endpoint — and explicitly test whether the package works without Symfony bundle registration. If it proves useful, wrap it behind an application-owned filter interface so controllers and domain code never touch the package API. Keep the existing filtering path available behind a feature flag or configuration switch.

Compatibility: Pin and inspect the v0.2.3 composer constraints: PHP version, symfony/* component ranges (6.2-era), and any Doctrine requirements. Run composer why-not against the actual application lockfile before committing. Verify against the exact framework version in production, and check for conflicts with existing query/filter packages, global scopes, multi-tenancy, authorization scopes, and pagination conventions. For Laravel targets, treat Symfony component overlap as a first-class conflict risk. License review remains a hard gate before distribution or customer-facing deployment.

Sequencing: First, license and legal review. Second, dependency-graph check to confirm v0.2.3 constraints resolve in our stack. Third, technical spike against the real schema, including a standalone-usage test. Fourth, build the adapter and contract tests around expected filter behavior. Fifth, pilot in one non-critical module with observability and rollback. Sixth, decide adopt, fork, or replace with an internal implementation. Only then expand usage if maintenance and performance signals hold.

Operational Impact

Maintenance: Unchanged in substance. With one narrow Symfony 6.2 compatibility release, low stars, and no dependents, assume the team owns maintenance if adopted. Budget for a fork, dependency upgrades, CI, and framework-version compatibility work — and note that the update cadence appears driven by external contributors patching individual constraints, not a maintained release process. Treat the package as internal code with an external origin.

Support: Community support is unlikely to be reliable. Ownership, escalation paths, and a decision record explaining the dependency must sit with the adopting team. Because the package is Symfony-oriented, our Symfony-fluent engineers — not Laravel-only engineers — are the realistic support pool. Centralize the adapter and version pinning if used in more than one service.

Scaling: Unchanged. Filtering becomes a database scaling problem quickly. Require indexed columns, pagination, maximum filter counts, allow-listed filter fields, query timeouts, and slow-query observability. Never expose arbitrary filter keys or unbounded relationship filters without validation.

Failure modes: License rejection; Composer resolution conflict from Symfony 6.2-era constraints; bundle-vs-framework incompatibility in Laravel; breakage on future framework/PHP upgrades; undocumented filter semantics; SQL errors from malformed input; performance regressions from complex filters. The fallback remains an internal filter implementation or the existing query path, with tests proving behavior parity.

Ramp-up: Expect low ramp-up for Symfony developers, moderate-to-high friction for Laravel-only developers, since the package's vocabulary and registration model are Symfony-native and documentation quality is still unknown. Given the v0.2.3 signal, the TPM should treat adoption as an experiment with explicit exit criteria — license clarity, proven standalone usability in our stack, and adapter test coverage — rather than a standard dependency rollout.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
jinas/dhivatar
store-doc/laravel-storage-driver
plus-it/laravel-translation-manager
diephp/perhaps
diephp/telegraph
osmaviation/spreadsheet
microsoft/fluentui-system-icons
mmccook/php-json-canonicalization-scheme
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console
pnscripts/filament-broadquill-lite
pnscripts/laravel-sentfold-lite
vleap/mx-sdk-laravel-internal
twidpay/utils
htetmyathlaing/scout-elasticsearch-driver
artisan-toolbox/front-awesome
ls/client-assistant
users-au/laravel-client
cgv/localized-resource