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

Laravel Settings Kit Laravel Package

metalinked/laravel-settings-kit

A Laravel settings kit for storing and managing application configuration in the database. Provides a simple API to define, retrieve, and update settings, making it easy to add admin-editable options and runtime configuration to Laravel apps.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture fit: The package fits Laravel/PHP applications that need persisted application, global, and per-user settings, including encrypted values. v2.0.1 strengthens the boundary between “settings storage” and “settings presentation”: encrypted values remain readable via get() in application code but are write-only through panel and JSON surfaces. For TPMs, this is a better default for admin panels, SPA settings screens, and multi-tenant apps where accidental secret disclosure is a product and compliance risk.

Integration feasibility: Upgrade feasibility is high for teams already on v2.0.0, but it is not a no-op if encrypted settings are surfaced in UIs, JSON clients, or export scripts. No data migration is indicated; existing encrypted values remain usable through code. The main integration work is behavioral: clients must handle value/default being null, use the new filled and encrypted flags, and call DELETE /settings/me/{key} to remove a secret explicitly.

Technical risk: Medium. The release fixes two serious encrypted-settings behaviors: secrets were previously returned through panel()/JSON endpoints, including inherited global defaults, and unchanged panel submissions could wipe stored secrets. The fix changes response semantics for encrypted settings, so old frontends/automation may display blanks, mis-handle null, or fail to export secrets by default. settings:export now skips encrypted settings unless --with-secrets is passed, and settings:list displays (encrypted). Teams must audit any parsing or display of these outputs.

Key questions: Which screens, APIs, or automations expose encrypted settings? Are clients prepared for value/default = null plus filled/encrypted? Who is authorized to call DELETE /settings/me/{key}? Are export jobs that need secrets using --with-secrets with protected artifacts? Are there custom panel/JSON implementations that bypass the new write-only behavior? Which Laravel/PHP versions are supported by the package’s composer constraints?

Integration Approach

Stack fit: Strong fit for Laravel apps using Blade, Livewire, or a JavaScript SPA. The new settings-screens guide is directly relevant to TPM planning because it defines the intended UI pattern: show whether an encrypted setting is filled, never render the secret, and only submit a new value when the user types one.

Migration path: Pin v2.0.1, update via Composer, and treat this as a security-driven minor upgrade with behavioral changes for encrypted settings. Inventory all uses of panel(), JSON endpoints, settings:export, and settings:list. Update frontends to read filled/encrypted; do not expect encrypted value or inherited encrypted default. Update JSON clients to tolerate null and empty values being ignored for encrypted settings. Update operational scripts to pass --with-secrets only where explicitly required and protected.

Compatibility: Non-encrypted settings should be largely unaffected. Encrypted settings are behaviorally changed outside application code. The code-level get() contract still returns decrypted values, so server-side business logic should continue to work. Confirm package version constraints against the target Laravel/PHP versions before scheduling.

Sequencing: First audit encrypted-setting exposure and automation. Second, update clients to tolerate null and the new flags, and add explicit delete behavior where users must clear secrets. Third, deploy v2.0.1 to staging and run regression tests for panel rendering, JSON round-trips, export/list commands, and inherited global defaults. Fourth, deploy production backend and frontend changes in a coordinated window. Fifth, update support runbooks and any secret-export procedures.

Operational Impact

Maintenance: Low-to-moderate ongoing maintenance. The package adds security-sensitive surface area around encrypted settings, endpoints, and CLI exports. Keep Composer locks current, track release notes, and periodically audit whether custom code or frontends still expect decrypted values from panel/JSON surfaces.

Support: Support teams need a clear explanation for “encrypted settings appear blank.” This is intentional; the UI should use filled to show whether a value exists. Support should know that clearing requires the explicit DELETE endpoint, not submitting an empty value. Any support workflow needing secrets must use controlled server-side code or settings:export --with-secrets with artifact protection.

Scaling: No material scaling concern indicated. The change may reduce payload sensitivity and prevent accidental secret writes. New panel flags add negligible overhead. The DELETE endpoint adds a write path that should be authorized and rate-limited consistently with other settings mutations.

Failure modes: Old frontends may show encrypted settings as empty and prompt unnecessary re-entry. Automation expecting secrets in settings:export or values in settings:list will break. Clients that relied on inherited encrypted defaults being returned will now receive null. Misuse of --with-secrets can leak secrets into logs or CI artifacts. An over-permissive DELETE endpoint could cause data loss. Custom code that still exposes decrypted values through panel/JSON would undermine the fix.

Ramp-up: Expect a short but mandatory ramp-up for teams using encrypted settings in UIs or automation. TPMs should budget for an audit, frontend/API adjustments, command-script updates, and support training. Teams using only server-side get() or non-encrypted settings should see a straightforward upgrade.

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.
skyraptor/chatter
edlugz/sasapay
abbasudo/artisan-route
mirvan/ippanel
ignibyte/aic-framework
glavweb/data-schema-bundle
glavweb/datagrid-bundle
tacticmedia/scim-server
uni-method/frame
neika-ai/sdk
adachsoft/php-code-style
pharaonic/laravel-notification-dependencies
beautinow/translug
dev-brainiac/bot-cloaked
octoberrain/html
octoberrain/extension
octoberrain/exception
octoberrain/contracts
adachsoft/api-version-bundle
cgv/localized-resource