18ed28da2e | ||
---|---|---|
.github/workflows | ||
app | ||
bootstrap | ||
config | ||
database | ||
public | ||
resources | ||
routes | ||
storage | ||
tests | ||
.babelrc | ||
.editorconfig | ||
.env.example | ||
.eslintrc.js | ||
.gitattributes | ||
.gitignore | ||
.styleci.yml | ||
CHANGELOG.md | ||
LICENSE | ||
README.md | ||
artisan | ||
composer.json | ||
composer.lock | ||
package-lock.json | ||
package.json | ||
phpunit.xml | ||
server.php | ||
tailwind.config.js | ||
vapor.yml | ||
webpack.mix.js |
README.md
OpnForm
A Laravel-Vue-Tailwind SPA starter kit. Forked from cretueusebiu/laravel-vue-spa.
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
- TailwindCSS v2
Installation
composer create-project --prefer-dist JhumanJ/laravel-vue-tailwind-spa
- Edit
.env
and set your database connection details - (When installed via git clone or download, run
php artisan key:generate
andphp artisan jwt:secret
) php artisan migrate
npm install
Usage
Development
# Build and watch
npm run watch
Production
npm run production
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
Credits
- cretueusebiu for creating the original Laravel Vue SPA
- Tailwind Kit for all their Tailwind templates
Changelog
Please see CHANGELOG for more information what has changed recently.