Weave Code
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

Config Bundle Laravel Package

aaronadal/config-bundle

Symfony bundle that loads configuration from multiple YAML files automatically. Define default and environment-specific glob paths; files in the current environment override defaults. Uses Symfony cache for fast startup and cleaner parameter/service management.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Modular Configuration Management: Enables splitting Symfony configuration into environment-specific files (e.g., dev/, prod/), reducing clutter in config.yml and improving maintainability.
  • Default-Override Pattern: Supports defining base configurations (e.g., database credentials, API keys) in defaults/ and overriding them per environment, reducing duplication.
  • Symfony Environment Alignment: Leverages Symfony’s built-in environment system (e.g., APP_ENV) to dynamically load configurations, aligning with CI/CD pipelines or multi-stage deployments.
  • Build vs. Buy: Justifies buying this lightweight package over custom solutions for teams already using Symfony, avoiding reinventing configuration inheritance logic.
  • Roadmap for Scalability: Future-proofs configuration management if the app grows to support:
    • Feature flags tied to environments (e.g., config/parameters/staging/feature_flags.yml).
    • Multi-tenant setups with tenant-specific configs (e.g., config/parameters/tenant1/).
  • Developer Experience (DX): Reduces context-switching for developers managing configs across environments (e.g., local, staging, prod).

When to Consider This Package

  • Adopt if:
    • Your Symfony app has 3+ environments (dev, staging, prod) with distinct configurations (e.g., different databases, APIs, or feature toggles).
    • You want to avoid hardcoding environment-specific values in config.yml or parameters.yml.
    • Your team prioritizes cleaner, modular configs over manual include statements in Symfony’s core config files.
    • You’re using Symfony Flex or Composer and want a zero-configuration setup (beyond AppKernel.php registration).
  • Look elsewhere if:
    • Your app uses non-Symfony PHP frameworks (e.g., Laravel, Lumen) or isn’t PHP-based.
    • You need real-time config reloads (this bundle loads configs at boot; consider tools like Symfony Runtime for dynamic updates).
    • Your configs are trivially simple (e.g., single parameters.yml file suffices).
    • You require advanced validation (e.g., schema validation for configs); this bundle focuses on file organization, not validation.
    • The last release is 6 years old (2017): Evaluate if the package aligns with your long-term Symfony version support (e.g., Symfony 6+ may need alternatives like Symfony’s built-in environment variables).
    • You need encryption for sensitive configs (e.g., secrets); pair with tools like Symfony’s Secret Manager.

How to Pitch It (Stakeholders)

For Executives/Business Leaders:

*"This package lets us manage app configurations like a pro—no more hunting through config.yml for environment-specific settings. Imagine:

  • Faster deployments: Staging and production configs are isolated, reducing human error.
  • Cleaner codebase: Configs live in logical files (e.g., config/parameters/dev/database.yml), making onboarding easier.
  • Cost savings: Avoids reinventing a config system; it’s a lightweight, battle-tested solution for Symfony. For $0 (MIT license), we get a maintainable, scalable way to handle configs across dev/staging/prod—critical as we scale."

For Engineers/Architects:

*"This bundle solves a pain point in Symfony apps: configuration sprawl. Here’s why it’s worth adopting:

  • Automated environment loading: No more manually includeing files in config.yml. Just drop configs in config/parameters/:env/ and let the bundle handle overrides.
  • Performance: Uses Symfony’s cache system—no runtime penalty.
  • Flexibility: Supports glob patterns (e.g., config/parameters/*.yml) for granular control.
  • Future-proof: Aligns with Symfony’s ecosystem (e.g., works with Flex, environments). Tradeoff: Last updated in 2017, but the core logic (file-based overrides) is timeless. If we stick to Symfony LTS, this is a safe bet.* Alternatives: For newer Symfony versions, we could explore Symfony’s environment variables or Runtime, but this bundle offers a simpler, file-based approach."*

For Developers:

*"Tired of editing config.yml every time you need a dev-only setting? This bundle lets you:

  • Split configs: Defaults in config/parameters/defaults/, overrides in config/parameters/dev/.
  • Auto-load: No manual include statements—just drop files in the right folder.
  • Example:
    # config/parameters/defaults/database.yml
    database_url: "postgres://default:pass@localhost:5432/app"
    
    # config/parameters/dev/database.yml (overrides above)
    database_url: "postgres://dev:pass@localhost:5433/app_dev"
    

Setup is trivial: Install via Composer, register the bundle in AppKernel.php, and define paths in config.yml. Perfect for teams that want clean, environment-aware configs without complexity."

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.
codifyo/ts-generator-bundle
andydefer/laravel-cluster
testo/fiber
mintobit/jobqueue
a4sex/maintenance-bundle
a4sex/entity-date-update
a4sex/client-identifier
a4sex/base-utilites
a4sex/key-value-storage
a4sex/micro-status
chilldev/dependency-injection-extra
datinglibre/datinglibre-app-api
biberltd/corebundle
bricre/symfony-bundle-test
biberltd/logbundle
dominium/http-adapter-bundle
dominium/google-analytics
a4sex/auto-clean-entity
christhompsontldr/laravel-inky
spatie/mailcoach-vapor