Я конечно не супер-гуру, но уже который год бьюсь вокруг laravel-vue-nuxt и в связках и по отдельности.
Сейчас как раз переписываю старый проект примерно по такой же системе.
Мне представляется, что можно обойтись одним div#app в основном layout
<body class="antialiased">
<div id="app">
@yield('content')
</div>
@stack('scripts')
</body>
, от которого уже наследовать страницы сайта. Просто регистрируете разные компоненты в app.js
const app = new Vue({
el: '#app',
router,
store,
components: { Homepage}, //здесь все ваши компоненты
});
И уже просто в блейдах их вставляете где необходимо. По идее встроенной laravel авторизации будет достаточно, поскольку роутинг будет laravel. Намучался с vue/nuxt авторизациями - слишком много нового за последний год sanctum, fortify - черт ногу сломит.
Я поставил чистую лару с упрощенной авторизацией breeze.
Опять же повторю ни разу не гуру и могу ошибаться