vue-i18n is the most robust and most used solution. It adds ~30KB to the minified js file size. Quite a lot, but all other solutions I saw look very weak in comparison to vue-i18n.
- UI (vue) localization engine
- Theme files localization engine
- Language selector in UI
- Passing selected language to API calls, and setting the laravel locale accordingly
- Browser (preferred) language auto-detection
- Localization of theme-specific menu and faq items