it-blaster/config-bundle
A configuration bundle for Laravel and PHP projects that centralizes and organizes application settings, merges multiple config sources, and supports environment-specific overrides, helping you publish and maintain clean, reusable configuration across your applications.
composer require <vendor>/<package>. Note that v1.0.1 tightens the constraint on translation-bundle, so the bundle is now pulled in as a required dependency rather than something you add yourself. Run composer why translation-bundle after install to confirm which version resolved and which package pulled it in.config/<package>.php (publish with php artisan vendor:publish --tag=<package>-config), then the package's resources/lang / lang directory to see which translation namespace it registers.php artisan vendor:publish --tag=<package>-translations. If you skip this, the package falls back to its bundled strings and you cannot override them per-locale.<package>::messages.key) rather than showing the raw key.lang/vendor/<package>/<locale>/*.php. Laravel's translator checks the application lang path before the package namespace, so your overrides win without touching vendor code. On the next upgrade, re-publish with --force only into a scratch directory and diff, rather than overwriting live overrides.composer.json if you need a specific version. Because v1.0.1 now declares the requirement, your root constraint becomes the tie-breaker in resolution; declaring it explicitly makes composer update deterministic across environments.App::setLocale() early (a SetLocale middleware reading the session/user preference) so the bundle resolves before the controller renders. Anything that caches translated HTML per-request will otherwise leak the previous locale.$this->withSession(['locale' => 'de']) or App::setLocale('de') and assert on the resolved string, not the key — this catches missing keys introduced by a bundle bump.composer.lock, and let a dependency bot open PRs for translation-bundle patch bumps. Treat those as low-risk but run the translation assertion suite anyway; string changes are silent failures.php artisan config:cache and any language-cache step to your deploy script after publishing, and clear before publishing, never the other way around.translation-bundle, composer update will now fail with a conflict where it previously succeeded. Run composer update --with-dependencies in a branch and read the conflict output before merging.de, Laravel falls back to config('app.fallback_locale') without error. During localisation work, temporarily set fallback_locale to a nonsense value like xx so missing keys surface loudly instead of shipping English to German users.php artisan about and Lang::getLoader()->namespaces() (tinker) confirm what's registered.config:cache freezes the locale list and any package config. A .env locale change after caching has no effect — a classic "works locally, wrong language in staging" cause.translator or locale_resolver binding in the service provider before writing your own.How can I help you explore Laravel packages today?