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

Settings Bundle Laravel Package

michal-hary/settings-bundle

Settings bundle for Laravel/PHP apps that gives you a simple, consistent way to define, store, and retrieve runtime configuration values. Manage app-wide settings in one place without editing config files or hardcoding options.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Build vs. buy for the settings layer. Any roadmap item that implies "ops/admin should be able to change this without a deploy" (pricing display, notification defaults, branding, quota thresholds, onboarding copy) reduces to a settings store. This package is the buy option: typed settings classes, casts, caching, and encryption are already solved, so the team builds the admin surface and the product logic instead of the plumbing.
  • Feature and roadmap sequencing. Settings work is usually a hidden dependency underneath several features at once. Adopting the package early unblocks those features in parallel rather than serializing them behind one custom-built config table.
  • Admin/configurability as a product capability. The v2.1.0-beta addition of settings groups is the decision-relevant change: named groups let settings be organized by product domain (billing, notifications, branding, limits) rather than living in one flat namespace. That directly shapes the information architecture of any admin settings UI, and it makes it practical to say "this section of the admin panel is owned by this team/domain" — a scoping and ownership decision, not just a code one.
  • Multi-context / tenant expansion. Grouping is a natural boundary for resolving settings per context (global vs. per-team vs. per-plan). If per-tenant configuration is anywhere on the roadmap, group-aware settings reduce the amount of re-architecture needed later.
  • Buy vs. build for the edge cases. Encryption at rest, validation, and cache invalidation are exactly where hand-rolled settings tables accumulate incidents. Choosing the package is a decision to not own those failure modes.

Release status note (v2.1.0-beta): the change is additive — settings groups is a new organizational capability with no breaking changes or deprecations indicated. It is not a reason to accelerate or delay adoption; it is a reason to confirm the beta is not on the critical path for the first production use.

When to Consider This Package

Consider it when:

  • Product or operations needs to change behavior without a deploy, and those values are application settings rather than infrastructure configuration.
  • You want typed, validated, cast settings objects rather than untyped key/value rows read directly in controllers.
  • You need caching, encryption, or per-context resolution — the parts most likely to be built badly in-house.
  • The team is on a supported Laravel/PHP version and is comfortable with a class-per-setting-group convention.
  • You want groups (v2.1.0-beta) to organize settings by domain; the beta is acceptable for evaluation and staging, and should be pinned and re-validated at GA before it becomes load-bearing.

Look elsewhere when:

  • The value is genuinely infrastructure configuration — database hosts, queue names, API endpoints. That belongs in config/ and environment variables, not a settings table.
  • You need high-frequency, high-volume writes (per-request counters, rate state). A settings table is a poor fit; use a purpose-built store.
  • You need a full feature-flag platform: percentage rollouts, experiment assignment, audit trails, approval workflows, granular RBAC. This package stores values; it does not govern who may change them or what happened when. Pair it with your own permissions and audit layer, or buy a dedicated platform if those are requirements, not nice-to-haves.
  • You only have a handful of static, developer-owned toggles that never change without a deploy. The package would be ceremony.

How to Pitch It (Stakeholders)

For executives: This is a small, well-scoped dependency that removes a recurring piece of custom engineering. It lets the product be configured by the business rather than by releases, which shortens the loop between "we want to change how this behaves" and "it's changed." It is low lock-in — settings live in a normal database table and read through ordinary classes — and the current release is an organizational improvement, not a rewrite. No breaking changes, no deprecation, nothing forcing a migration.

For engineering: Adoption means typed setting classes with casts and validation instead of ad-hoc key/value lookups, with caching and encryption handled by the package. The v2.1.0-beta adds settings groups, which gives us a namespacing convention per domain and a clean seam if we later need per-tenant resolution. It is additive and non-breaking; pin the beta, keep it off the critical path until GA, and plan a thin internal wrapper so the admin UI and authorization layer stay ours.

Recommendation: adopt for the application-settings use case, evaluate settings groups in staging, and explicitly do not use it for infrastructure config or as a substitute for feature-flagging and audit tooling.

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.
ippanelcom/laravel-sdk
adachsoft/changelog-linter
adachsoft/collection
payerurl/telegrambot-crypto-payment-instant-payout
dskripchenko/laravel-hybrid-search
riorizkyrainey/lara-ced
mehedimi/static-vel
zharp/zharp
nonsapiens/bigquery-model-sync
lgu-bayambang-ict-office/lgu-laravel-development-standards
andydefer/laravel-support
se7enxweb/flysystem
lampwick/laravel
jeslage/statamic-emojis
micahdshackelford/rmap-laravel
draftsmaninc/draftsman
square-bit/laravel-volition
himito/laravel-mailman
htinlynn/genius-helper
maco-studios/hephaestus