expertcoder/before-after-bundle
A Symfony 2/3 bundle that runs code before every action in a controller. Implement ExecuteBeforeInterface on your controller and put logic in executeBefore() to execute automatically before any action method is invoked.
executeAfter() in the TODO list. This is a useful test case for setting a minimum bar (maintenance signal, test coverage, license, security response) before we accept any third-party package.Consider it only if all of the following are true:
kernel.controller event subscriber or a shared base controller, perhaps because the existing code has no service wiring for that controller.Look elsewhere — and in practice, do look elsewhere — when:
terminate()), and zero new dependencies. There is no reason to port a Symfony 2/3 bundle into a Laravel app.kernel.controller event subscriber or a kernel.controller_arguments listener; both are first-party, typed, testable, and maintained.executeAfter() is unimplemented per the README TODO. Laravel middleware terminate(), Symfony kernel.terminate, or a response listener are the correct tools.One-line summary: This is a tiny, archived Symfony 2/3 helper for running code before controller actions; the need is real, but the package is not the answer, and the capability is already built into the frameworks we use.
For executives: We evaluated a third-party package for a recurring internal need — running shared logic on every endpoint of a given screen or API resource. Recommendation is do not adopt. The package is archived, effectively unmaintained (last activity predates the framework versions we target), has no meaningful usage base, and is missing half its advertised functionality. The good news is that the same outcome is available from the framework itself at roughly a half-day to one-day of engineering effort with no new dependency, no security surface, and no vendor risk. Net: no roadmap impact, no budget ask, and we avoid a long-term maintenance liability for a few hours of saved work.
For engineering: If the requirement is "run code before/after every action in this controller," implement it with the platform's native mechanism — Laravel middleware (with terminate() for the after case) or a Symfony kernel.controller event subscriber on supported versions. That gives us type safety, unit-testable units, explicit ordering, per-route control, and coverage in CI. The package's only distinct idea is opting in via an interface on the controller; we can reproduce that with a marker interface plus a listener if the team prefers that ergonomics. Please also confirm whether any service still runs Symfony 2/3 — that's the actual risk surfaced by this evaluation, and it should be tracked separately as technical debt.
Ask: No purchase, no adoption. Close the requirement as "solved by framework primitives," and add a line to our dependency intake checklist requiring maintenance and usage signals before any future third-party evaluation reaches a spike.
How can I help you explore Laravel packages today?