Здравствуйте!
Сейчас пишу приложение в связке Vue и Laravel. Изначально стал использовать подход с компонентами в отдельных файлах - это действительно правильный путь. Иначе как только приложение немного разрастется управлять им будет невозможно.
Так же использую vue-router и vuex. Концепции не очень сложные - со временем они точно пригодятся.
По умолчанию Лара предлагает писать так же компонентами, которые собираются в приложение встроенным механизмом - Elixir. Я пошел немного по другому пути - установил webpack с vue шаблоном компиляции и стал разрабатывать фронт как принципиально отдельное приложение (как
здесь), обращающееся к Ларе за данными (REST архитектура). После компиляции файл фронта подключу к точке входа Лары (index.blade.php и в нем id="app") и сделаю проброс веб маршрута (не АПИ) в приложение (как
здесь).
Честно говоря сам не знаю почему не пошел по предложенному по умолчанию пути - Elixir так же следит и компилирует файлы на горячую. Наверное хотелось сделать полностью разделенную архитектуру фронт-бэк..