phanan/cascading-config
Laravel package that brings cascading configuration to your apps: split settings into layered files where environment-specific values override the defaults, keeping large configs organized and avoiding duplication across environments.
config/{environment}/ cascade, so a team can decide between environment-variable-driven config (Laravel 5+ default, .env) and file-based per-environment overrides (staging, QA, regional, tenant). That is a real architectural decision with downstream consequences for secret handling, config caching, and deploy reproducibility.Consider it only when all of the following hold:
array_replace_recursive in a service provider is also viable and arguably preferable.Look elsewhere when:
spatie/laravel-settings or a custom settings table.config:cache are a common source of "works locally, wrong in prod" incidents, and an unmaintained package will not help you debug them.To executives (one paragraph): This is a small community package that restores an older Laravel configuration convention — per-environment config folders that layer over a base config. It is not a strategic dependency: the repository is archived, it targets an end-of-life framework version, and it has essentially no adoption. The value on the table is a pattern, not a product. Recommendation: do not add it as a dependency on any current or new workstream; treat it as a reference implementation if a legacy Laravel 5 app in our portfolio needs a short-term config bridge during migration. Cost is negligible; the risk is silent breakage in an unsupported component, which we mitigate by vendoring and time-boxing.
To engineering (bullets):
config/{env}/ cascading overrides on top of Laravel 5's flat config, so environment-specific values live in versioned files instead of scattered env vars.app()->environment(), and lean on config:cache in production. This gets 90% of the cascade's benefit with none of the dependency risk.How can I help you explore Laravel packages today?