spatie/laravel-translatable
Adds HasTranslations to Eloquent models to store translations in JSON columns—no extra tables. Define translatable attributes via PHP 8 attribute or $translatable property, then set/get per-locale values while model accessors return the current app locale.
The config file has been removed. You can now define a fallback locale, set fallBackAny and handle custom behaviour for missing translations, via Translatable::fallback(). Take a look in the readme to learn how to specify the fallback behaviour you want.
The TranslationHasBeenSet event has been renamed to TranslationHasBeenSetEvent.
In most cases you can upgrade without making any changes to your codebase at all. v3 introduced a translations accessor on your models. If you already had one defined on your model, you'll need to rename it.
How can I help you explore Laravel packages today?