A Laravel package that scaffolds a complete Vue.js SPA setup with TypeScript/JavaScript support
Русская версия • Russian version
Laravel Vue is an opinionated installer package that automates the setup of a modern Vue 3 Single Page Application within Laravel projects. It provides a complete, production-ready frontend stack with routing, state management, development tools, and seamless Laravel integration.
- PHP >= 8.2
- Laravel >= 10
- Node.js & NPM
- Composer
Install the package via Composer:
composer require somecode/laravel-vue --devRun the interactive installer:
php artisan laravel-vue:installFrontend Stack:
- Vue 3 with Composition API
- Vue Router for client-side routing
- Pinia for state management
- Axios for HTTP requests
- VueUse composables library
- Iconify for icons
Development Tools:
- Vite with Laravel Vite Plugin
- TypeScript configurations (if TS chosen)
- ESLint + Prettier
- SCSS with theme variables
Laravel Integration:
- Laravel Wayfinder (type-safe routes)
- Blade template with Vite directives
- SPA catch-all route (excludes
/api/*)
Project Structure:
resources/js/
├── app.ts # Application entry point
├── App.vue # Root component
├── router/ # Vue Router setup
├── stores/ # Pinia stores
├── views/ # Page components
├── components/ # Reusable components
├── composables/ # Vue composables
├── layouts/ # Layout components
└── api/ # API client
npm run buildnpm run dev # Start development server
npm run build # Build for production
npm run lint # Run ESLint
npm run lint:fix # Fix ESLint issues
npm run format # Format code with Prettier
npm run type-check # TypeScript type checking (TS only)The MIT License (MIT). Please see License File for more information.
Mikhail Protasevich
- Email: me.protasevich@gmail.com
