gepur-it/request-validator-bundle
A Symfony bundle that validates incoming request data against declarative rules, with clean error responses and easy integration into controllers.
Architecture fit — poor, and the framing needs correcting. Despite the description line in the ticket, gepur-it/request-validator-bundle is a Symfony bundle, not a Laravel package. Its architectural contract assumes Symfony's HttpKernel (request/response lifecycle), EventDispatcher, DependencyInjection compiler passes, and registration via Kernel::registerBundles() plus config/bundles.php. None of these exist in a Laravel application. Laravel's request pipeline is middleware + service container + FormRequest, and the bundle's service wiring, extension class, and kernel-boot assumptions have no execution path there. A "Laravel adoption" is therefore not an integration — it is a port of whatever validation logic the bundle contains, if any is worth porting.
Integration feasibility — low. The only realistic paths are:
Validator/FormRequest, which already covers the presumed use case (validating inbound request payloads, returning structured errors, authorization gating).FormRequest. Cost is low if the surface is small; the value is only the convention, not the code.Pulling the bundle in as a Composer dependency and expecting it to function is not a viable option.
Technical risk — high, driven by maturity rather than code complexity. Signals: 1 star, 0 dependents, composite score 0.005, no evidence of CI, no downstream consumers to derisk it, and no visible release cadence. This is effectively an unaudited, unproven codebase. For a validation component — a trust boundary that sits in front of every write path — that is the wrong profile. Specific risks: unknown PHP/Symfony version constraints (a stale composer.json will conflict-lock our own dependency graph), no security disclosure process, no test coverage signal, and a single-maintainer bus factor. The MIT license is clean and permits forking, which is the mitigation if we go with option 2.
Key questions for the maintainer / spike:
Validator component or Laravel's Validator does not already do?symfony/http-foundation, or custom?Stack fit — none as-is. Our stack is Laravel on the illuminate/* component set. The bundle targets symfony/*. There is no shared runtime.
Recommended path — evaluate-then-port, with "no" as the default.
FormRequest behavior.BaseFormRequest. This is typically 100–300 LOC and gives us full test coverage and ownership.gepur-it/request-validator-bundle to composer.json. If the port is needed, attribute the source in a header comment per MIT and move on.Migration path. None required — there is no existing state to migrate. For teams currently on Symfony who are evaluating this bundle, the migration question is moot; for our Laravel services, the "migration" is just the port in step 2, and it lands as net-new code.
Compatibility. Watch PHP version and any transitive symfony/* constraints if we ever vendor the logic directly. Since the recommendation is a reimplementation against Laravel's Validator, we inherit Laravel's supported PHP matrix and avoid version-conflict risk entirely.
Sequencing.
FormRequest + unit and feature tests.Maintenance — the decisive factor. A 1-star, 0-dependent package has no community to catch regressions and no economic incentive for the author to keep pace with Symfony/PHP releases. Adopting it means we own it anyway; owning a fork of somebody else's unaudited code is strictly worse than owning our own small, tested implementation. The port in the Integration Approach is the cheaper long-run decision.
Support. No vendor, no SLA, no security contact, no changelog. Escalation path is "read the source." That is acceptable for a dev-only linting tool and unacceptable for a request-validation trust boundary.
Scaling. Negligible runtime concern — request validation is stateless, CPU-cheap, and horizontally scales with the app tier. The real scaling cost is cognitive: every new endpoint team must learn a bespoke validation convention that is not in Laravel's docs and not on Stack Overflow.
Failure modes.
symfony/* constraint blocks framework upgrades. Avoided by not depending on it.Ramp-up. Low for any Laravel developer if we reimplement — FormRequest is standard knowledge. High if we adopt the bundle as-is, because onboarding requires understanding Symfony's kernel, DI, and event model purely to read a validation layer, which is disproportionate to the problem being solved.
Bottom line. Score 0.005 with 1 star and 0 dependents is the correct read: this is not a candidate for adoption in a Laravel codebase. Treat it as a design reference, extract any useful convention, implement it natively, and keep the dependency graph clean.
How can I help you explore Laravel packages today?