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

Feature Toggle Laravel Package

joshuaestes/feature-toggle

A feature toggle (feature flag) package for Laravel that lets you enable or disable application features at runtime. Define toggles in configuration, check them cleanly in your code, and roll out or hide functionality without redeploying.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

  • Architecture fit: The package addresses a legitimate need—feature toggles—but its fit for a modern Laravel application is questionable. It was last released in 2015, before modern Laravel package discovery, typed PHP, and current PHP 8.x expectations. A TPM should treat it as a possible tactical reference implementation or short-term utility, not a strategic platform dependency. If adopted, isolate it behind an internal FeatureFlag interface so domain code never imports vendor classes directly.
  • Integration feasibility: MIT licensing lowers legal friction, and Composer installation may be technically possible, but feasibility depends on unverified constraints: PHP version, Laravel version, service-provider/facade design, dependency tree, and test coverage. With 24 stars and zero dependents, there is little ecosystem validation. A time-boxed proof of concept on the target Laravel/PHP version is mandatory before any commitment.
  • Technical risk: High. The package is effectively unmaintained, with no release since 2015, no known dependent base, and likely compatibility gaps with current PHP/Laravel versions. Security patching, framework upgrades, and bug fixes would become internal responsibilities. The opportunity score may suggest conceptual value, but the operational evidence points to abandonment risk. Do not place it on a critical path such as entitlement checks, billing, or production kill switches without a fork-and-own decision.
  • Key questions: What persistence model does it use—config, database, or custom storage? Does it support percentage rollouts, user targeting, context-aware evaluation, audit history, and default fallbacks? What Laravel and PHP versions are supported? Does it cache evaluations, and what is the performance profile? What is the test coverage and dependency risk? Is the API stable enough to wrap? What is the exit path to Laravel Pennant, Unleash, LaunchDarkly, or an internal implementation? Who owns the fork if the package fails?

Integration Approach

  • Stack fit: Best suited, if at all, to simple boolean toggles in low-risk internal workflows. For modern Laravel, a first-party or actively maintained feature-flag solution is a stronger default. If the package is retained, wrap it in an adapter with explicit defaults, evaluation context, and logging. Keep flag definitions out of controllers and domain services.
  • Migration path: Start with a discovery audit: inventory required toggle behaviors, inspect the package source and Composer constraints, and run a proof of concept on the current stack. If viable, fork the repository under the organization, pin the version, add CI and contract tests, and expose only the internal interface. Then migrate call sites incrementally, starting with non-critical toggles. Define an exit plan up front—either replace with Laravel Pennant/maintained service or promote the fork to an owned internal package.
  • Compatibility: Assume incompatibility with current PHP 8.x and Laravel 10/11 until proven otherwise. Verify Composer constraints, deprecated Laravel APIs, facade/service-provider behavior, and transitive dependencies. The 2015 release date makes framework and PHP-version drift the primary integration blocker. Pin exact versions and avoid floating constraints.
  • Sequencing: 1) Confirm toggle requirements and risk tier; 2) inspect code, tests, dependencies, and license; 3) run a target-stack proof of concept; 4) decide adopt/fork/build/replace; 5) implement the internal adapter and tests; 6) pilot one low-risk toggle with one team; 7) document operational runbooks; 8) roll out selectively or migrate away. Do not begin with customer-facing or revenue-critical flags.

Operational Impact

  • Maintenance: The package is unmaintained. A TPM must budget engineering ownership for security patches, PHP/Laravel upgrades, bug fixes, and documentation—or explicitly accept the risk of no support. With zero dependents and a 2015 release, there is no vendor or community maintenance signal to rely on.
  • Support: No SLA, no active maintainer commitment, and limited community support. Internal documentation, ownership assignment, and escalation paths are required before production use. If the package is only a reference implementation, support burden is lower but still non-zero.
  • Scaling: Unknown. Simple config-based toggles can scale adequately; database-backed or remote evaluation may introduce latency and consistency issues. There is no evidence of caching, percentage rollouts, or high-traffic design. Load-test any production path and define maximum evaluation latency and failure behavior.
  • Failure modes: Stale flags and flag debt; incorrect default values; inconsistent evaluation across services; missing audit trail; breakage during PHP/Laravel upgrades; security exposure from abandoned dependencies; and no clean kill switch for the flag system itself. Require explicit defaults, flag lifecycle ownership, expiration dates, and a fallback path that does not depend on the package.
  • Ramp-up: The API may be small, but ramp-up cost is driven by archaeology and risk management rather than feature complexity. Plan for code walkthroughs, contract tests, a pilot team, runbooks, and training on flag lifecycle and cleanup. A TPM should treat adoption as an owned mini-platform decision, not a drop-in utility.
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.
shitoudev/permissionmanager
johannesclimacus/laravel-tui
hocvt/seotools
vitalybaev/sypexgeo
amphibee/themosis-ignition
gito-me/fast-excel
frankyso/laravel-ipaymu
geolize-studio/laravel-chile
boomerangui/chat
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