Skip to content
🐘 A Laravel 5.5 SPA boilerplate with a users CRUD using Vue.js 2.5, GraphQL, Bootstrap 4, TypeScript, Sass, and Pug.
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci feat: use graphql-laravel instead of laravel-graphql Feb 9, 2019
.vscode feat(docker): add Xdebug Apr 1, 2018
app
bootstrap
build
config feat: use graphql-laravel instead of laravel-graphql Feb 9, 2019
database fix: use correct status codes Jun 18, 2018
docker
public fix: use correct status codes Jun 18, 2018
resources fix: remove uri from Apollo configuration Mar 1, 2019
routes
storage feat(users): add user registration support Dec 28, 2017
tests feat: add boilerplate for GraphQL support Jan 14, 2019
.babelrc
.editorconfig chore: initial commit Dec 27, 2017
.env.appveyor
.env.docker
.env.example
.env.testing.example feat: add JWT authentication support Feb 15, 2018
.env.vsts-ci
.gitattributes
.gitignore refactor: remove unnecessary configurations Feb 11, 2018
.gitlab-ci.yml ci(GitLab): add continuous deploy Apr 2, 2018
.htaccess-novhosts fix(apache): improve .htaccess files Dec 27, 2017
.travis.yml
.vsts-ci.yml
CONTRIBUTING.md
DEPLOY.md chore: change live example url Apr 17, 2018
Dockerfile
Envoy.blade.php
LICENSE
README.md feat: use graphql-laravel instead of laravel-graphql Feb 9, 2019
appveyor.yml
artisan
composer.json
composer.lock feat: use graphql-laravel instead of laravel-graphql Feb 9, 2019
docker-compose.yml fix: fix Laravel Mix hot reload Jun 4, 2018
logo.png
package.json feat: add boilerplate for GraphQL support Jan 14, 2019
phpunit-log-junit-fix.php
phpunit.xml
server.php chore: change live example url Apr 17, 2018
tsconfig.json feat(vue): update packages Jan 13, 2019
tslint.json
webpack.mix.js feat: add boilerplate for GraphQL support Jan 14, 2019
yarn.lock

README.md

Laravel Vue Boilerplate

Travis CI CircleCI AppVeyor GitLab CI

A Laravel 5.5 Single Page Application boilerplate using Vue.js 2.5, GraphQL, Bootstrap 4, TypeScript, Sass and Pug with:

  • A users CRUD if the current user is an admin written in RESTful and GraphQL.
  • i18n for English, Portuguese and Spanish, based on browser language settings.
  • Authentication using JWT.
  • WebSockets with Laravel Echo and Pusher.
  • Vue component tests using Jest and API tests using PHPUnit.
  • Already configured to run tests on Docker, GitLab CI (with continuous deploy), Travis CI, CircleCI, AppVeyor and VSTS CI on Windows, Linux and macOS.
  • Dockerfile configured with PHP 7, Node.js 8, Yarn and Composer, with MySQL and phpMyAdmin on Docker Compose.

You can check it live on this website, with the credentials:

Admin user

E-mail: admin@example.com
Password: admin

Normal user

E-mail: normal@example.com
Password: normal

Notice that all the changed data on that website sample, such as password and CRUD actions, won't be stored.

Main dependencies

Front-end:

The TypeScript code tries to follow the Airbnb JavaScript Style Guide, the linters are already included and configured.

Back-end:

Steps to run it:

Remember to search for "TODO change" on the files to change example code.

With Docker

Run:

docker-compose up --build

After it starts, just on the first time, run on another terminal:

docker exec laravel-vue-boilerplate bash -c "composer start && yarn start"

The application will be available on http://localhost:8000 and the phpMyAdmin on http://localhost:8081

Common way

Rename the .env.example file to .env, and fill it with your local info, then:

Install PHP and JavaScript dependencies:

composer install
yarn

Generate Laravel keys:

php artisan key:generate

Generate JWT keys

php artisan jwt:secret

Generate i18n string for Vue, based on Laravel i18n files:

php artisan vue-i18n:generate

Migrate and seed the database:

php artisan migrate --seed

Compile all the front-end stuff:

yarn prod

Test:

composer test
yarn test
You can’t perform that action at this time.