To keep everything clean, every part of the page should be its own *.blade.php
file which would be put together using a master template of sorts.
master.blade.php
@yield('includes.sidebar')
@yield('users.greeting')
@yield('store.shoppingcart')
Then you can use view composers
so that each time these views are loaded, the data you want is injected into them. I would probably either create a new file which would get autoloaded, or if you have service providers for the separate portions of your app that these views would use, it would also go great in there.
View::composer('users.greeting', function($view)
{
$view->with('user', Auth::user());
});
In this case, it would make the user model available inside your view. This makes it very easy to manage which data gets injected into your views.