Easiest way is to make everything go into the current session for the current user. I am working on a code for that. Here on this link there are some ideas (for older Laravel version)
The idea is to use a middleware for every request.
Other options are listed here, but I haven't tried them yet.
https://quickadminpanel.com/blog/10-best-laravel-packages-for-multi-language-projects/
Third option is from this link
http://www.mundointerativo.com/2017/10/12/laravel-5-5-localization-scratch/
To understand language managing. Example from the last post is:
Route::get('locale/{locale}', function ($locale) { \Session::put('locale', $locale); return redirect()->back(); });