/laravel-vue-spa

A Laravel-Vue SPA starter project template.

Primary LanguagePHPMIT LicenseMIT

Laravel-Vue SPA

Build Status Total Downloads Latest Stable Version

A Laravel-Vue SPA starter kit.

Features

  • Laravel 8
  • Vue + VueRouter + Vuex + VueI18n + ESlint
  • Pages with dynamic import and custom layouts
  • Login, register, email verification and password reset
  • Authentication with JWT
  • Socialite integration
  • Bootstrap 5 + Font Awesome 5

Installation

  • composer create-project --prefer-dist cretueusebiu/laravel-vue-spa
  • Edit .env and set your database connection details
  • (When installed via git clone or download, run php artisan key:generate and php artisan jwt:secret)
  • php artisan migrate
  • npm install

Usage

Development

npm run dev

Production

npm run build

Socialite

This project comes with GitHub as an example for Laravel Socialite.

To enable the provider create a new GitHub application and use https://example.com/api/oauth/github/callback as the Authorization callback URL.

Edit .env and set GITHUB_CLIENT_ID and GITHUB_CLIENT_SECRET with the keys form your GitHub application.

For other providers you may need to set the appropriate keys in config/services.php and redirect url in OAuthController.php.

Email Verification

To enable email verification make sure that your App\User model implements the Illuminate\Contracts\Auth\MustVerifyEmail contract.

Testing

# Run unit and feature tests
vendor/bin/phpunit

# Run Dusk browser tests
php artisan dusk

Changelog

Please see CHANGELOG for more information what has changed recently.