hmayer/enum-field
A Laravel field type for PHP enums that renders backed enum cases as selectable options with human-friendly labels, so models with enum attributes can be edited cleanly through forms instead of raw values.
composer require vendor/package:^1.0 and check the resolved version in composer.lock; avoid dev-main in anything production-bound.composer.json and confirm illuminate/support and php constraints match your app (Laravel 10/11/12, PHP 8.2+). Mismatches surface later as confusing container or signature errors.extra.laravel.providers). If so, do not also register it in config/app.php. Confirm with php artisan about or php artisan package:discover.php artisan vendor:publish --provider="Vendor\Package\PackageServiceProvider"--tag=config / --tag=migrations individually.
Read the published config end-to-end before editing; commit it so environment drift is visible.php artisan migrate) in a local branch first; inspect table names for collisions with your schema.php artisan tinker (app(MainClass::class)) and exercise the smallest happy-path call. This catches missing config, missing credentials, and registration problems in under a minute.new the package's classes. Constructor injection in your own classes keeps you config-compliant and mockable.App\Services\FooClient wrapping the package). When 2.0 lands — or the package is abandoned — one class changes instead of forty call sites.@method docblocks so static analysis and IDEs keep working.env() read in application code is a landmine once php artisan config:cache runs in deploy.octane:start before trusting it.QUEUE_CONNECTION=sync first to force errors into your face, then move to database/redis. Ensure anything the package dispatches is serializable.$this->mock(ClientContract::class, ...) in setUp() before the container resolves the consumer.Http::fake() and assert on the recorded request (Http::assertSent) rather than trusting the package's own assertions.php artisan config:clear locally, cache rebuild in CI/CD).^1.0, read the changelog before every minor, and record the exact version you shipped with.env() called from package source outside a config file returns null once config is cached. Symptom is "works locally, breaks in staging/production". Grep the package's src/ for env( to see how exposed you are.vendor:publish without a tag publishes everything; publishing twice without --force silently leaves your edited config stale relative to a new default. Diff published config against the package's after upgrades.config/app.php yields duplicate bindings, duplicate listeners, or doubled event handling. php artisan about shows discovered providers — check there first.TestCase::setUp() or short-circuit when app()->runningUnitTests().Log::debug around the adapter call, php artisan event:list, route:list, queue:failed, and about. Most "it does nothing" reports are a provider that never booted.AppServiceProvider rather than patching vendor code — it survives composer update.How can I help you explore Laravel packages today?