hotflo/feature-toggle-bundle
hotflo/feature-toggle-bundle adds a simple feature-flag layer to PHP applications, letting teams enable or disable features at runtime without redeploying. Define toggles, check them in code, and roll out changes gradually with less risk.
Feature toggles are a delivery-risk tool, not a product feature — the value is in the decisions they unblock, not in the library itself.
Critical caveat for the decision at hand: despite the package description advertising a "Laravel package," the repository is a Symfony 2 bundle — a thin DI wrapper around JoshuaEstes/FeatureToggle, with no illuminate/* support. Symfony 2.x reached end-of-life in November 2018. With zero stars and zero dependents, there is no community to lean on for security patches or compatibility work. If your stack is Laravel, this cannot be dropped in; you would be writing your own service provider against the underlying library, or evaluating a maintained alternative.
Adopt only under a narrow set of conditions:
FeatureToggle library interfaces (a FeatureManager, named toggle strategies) and are comfortable writing your own container wiring — in which case, depend on the library directly rather than the bundle.Look elsewhere — or build the ~100 lines yourself — if any of the following are true:
To executives — the honest framing: "This is not a vendor we should standardize on. It's a years-old Symfony 2 integration with no adoption and no maintainer activity, and our stack is Laravel. Building on it would create a dependency we'd have to own and eventually rip out."
What the evaluation is actually worth: the exercise surfaced a real gap — we have no consistent way to dark-launch features, run controlled rollouts, or kill a bad release without a redeploy. That gap costs us engineering velocity and increases incident blast radius. The decision is whether to close it with a managed platform (LaunchDarkly/Unleash — cost, governance, targeting included) or a lightweight in-house flag service (cheap, but we own expiry discipline and audit tooling).
To engineering: "The underlying FeatureToggle library's interface design — a manager, named toggles, pluggable strategies — is worth borrowing from. The Symfony 2 bundle wrapper is not worth adopting, and it won't install cleanly against modern Laravel/Symfony components anyway. If we go in-house, we implement the same shape as a Laravel service provider in roughly a day, with tests, on a stack we can actually patch."
Recommended next step: treat this as a rejected candidate with a useful reference implementation, and spend one spike sizing an in-house toggle service (or Pennant adoption) against a three-month Unleash trial. Decide on governance requirements — audit trail, targeting, sticky bucketing — first; those, not the library, determine the answer.
How can I help you explore Laravel packages today?