signifly/laravel-configurable
Give any Laravel Eloquent model its own configuration. signifly/laravel-configurable adds a lightweight trait and clean API for storing and retrieving per-model settings, with sensible defaults, simple access, and no boilerplate.
composer require <vendor>/<package>:^1.5 and confirm your app is on PHP 8.0+ if you want the new support — v1.5.0 is the first release advertising PHP 8 compatibility, so older pins may resolve to a version that blocks the upgrade.composer why-not <vendor>/<package> 1.5.0 and composer show <vendor>/<package> will immediately tell you whether you're fighting the package or your platform (composer.lock, CI image, Docker base image, or config.platform.php).composer.json (autoload, extra.laravel.providers / aliases for package discovery), then the service provider in src/, then the config file. Those three tell you almost everything about how the package expects to be wired.php artisan vendor:publish --provider="Vendor\Package\PackageServiceProvider" --tag=config. Reading the config keys is faster than reading the README.php artisan tinker and make one real call end-to-end. This confirms discovery, config merge, and credentials in one shot before you build anything on top of it.new calls. Keep package credentials in config/services.php or the package's own config file, fed by .env.^1.5 and let CI prove the PHP 8 path. If you run a matrix, add 8.0/8.1/8.2 explicitly; the release note claims support, but only your test suite confirms it against your usage....WasCreated / ...Failed event is far more upgrade-stable than subclassing internals.composer.json now allows ^8.0 and that the code actually runs — deprecations like required-after-optional parameters, removed curly-brace array access, and changed default behaviour of internal functions are the usual suspects. Run your suite with E_ALL and watch the deprecation log.composer update <vendor>/<package> -W is usually needed because transitive dependencies may also need bumping. If CI runs a different PHP than your laptop, set config.platform.php so resolution is deterministic..env, run php artisan config:clear. A cached config silently ignores new keys added in v1.5.0.bootstrap/cache/packages.php is regenerated (composer dump-autoload, php artisan package:discover).config/app.php if you hit a conflict.composer show for the resolved version, php artisan about for the environment, config('package.key') in tinker for the merged config, and the package's own log channel for swallowed exceptions.How can I help you explore Laravel packages today?