Skip to content

Instantly share code, notes, and snippets.

@calebsmithdev
Created September 21, 2017 02:30
Show Gist options
  • Star 4 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save calebsmithdev/f85276736065a67b1ff2af1f2e764434 to your computer and use it in GitHub Desktop.
Save calebsmithdev/f85276736065a67b1ff2af1f2e764434 to your computer and use it in GitHub Desktop.
Vue Paper Dashboard Pro and Laravel
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<link rel="apple-touch-icon" sizes="76x76" href="static/img/apple-icon.png">
<link rel="icon" type="image/png" sizes="96x96" href="static/img/favicon.png">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<title>Vue Paper Dashboard</title>
<!-- Bootstrap core CSS -->
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
<!-- Fonts and icons -->
<link type="text/css" href="https://fonts.googleapis.com/css?family=Muli:400,300" rel="stylesheet">
<link type="text/css" href="https://fonts.googleapis.com/css?family=Montserrat" rel="stylesheet">
<link type="text/css" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet">
<link type="text/css" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet">
<link href="static/css/themify-icons.css" rel="stylesheet">
<link rel="stylesheet" href="{{ mix('/css/app.css') }}">
</head>
<body>
<div class="wrapper" id="app">
@yield('content')
</div>
<script src="{{ mix('/js/app.js') }}"></script>
</body>
</html>
{
"private": true,
"scripts": {
"dev": "npm run development",
"development": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
"watch": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --watch --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
"watch-poll": "npm run watch -- --watch-poll",
"hot": "cross-env NODE_ENV=development node_modules/webpack-dev-server/bin/webpack-dev-server.js --inline --hot --config=node_modules/laravel-mix/setup/webpack.config.js",
"prod": "npm run production",
"production": "cross-env NODE_ENV=production node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js"
},
"devDependencies": {
"axios": "^0.16.2",
"babel-eslint": "^7.2.3",
"babel-plugin-component": "^0.9.1",
"babel-plugin-istanbul": "^3.1.2",
"babel-plugin-transform-runtime": "^6.22.0",
"babel-preset-es2015": "^6.24.1",
"babel-preset-stage-2": "^6.24.1",
"babel-register": "^6.22.0",
"bootstrap-sass": "^3.3.7",
"chai": "^3.5.0",
"chalk": "^1.1.3",
"chromedriver": "^2.27.2",
"connect-history-api-fallback": "^1.3.0",
"cross-env": "^5.0.1",
"cross-spawn": "^5.0.1",
"css-loader": "^0.26.1",
"eslint": "^3.19.0",
"eslint-config-standard": "^10.2.1",
"eslint-friendly-formatter": "^3.0.0",
"eslint-loader": "^1.7.1",
"eslint-plugin-html": "^2.0.3",
"eslint-plugin-import": "^2.6.1",
"eslint-plugin-node": "^4.2.2",
"eslint-plugin-promise": "^3.5.0",
"eslint-plugin-standard": "^3.0.1",
"eventsource-polyfill": "^0.9.6",
"express": "^4.14.1",
"function-bind": "^1.1.0",
"html-webpack-plugin": "^2.28.0",
"http-proxy-middleware": "^0.17.3",
"inject-loader": "^2.0.1",
"karma": "^1.4.1",
"karma-coverage": "^1.1.1",
"karma-mocha": "^1.3.0",
"karma-phantomjs-launcher": "^1.0.2",
"karma-sinon-chai": "^1.2.4",
"karma-sourcemap-loader": "^0.3.7",
"karma-spec-reporter": "0.0.26",
"karma-webpack": "^2.0.2",
"laravel-mix": "^1.0",
"lodash": "^4.17.4",
"lolex": "^1.5.2",
"marked": "^0.3.6",
"mocha": "^3.2.0",
"nightwatch": "^0.9.12",
"opn": "^4.0.2",
"ora": "^1.1.0",
"phantomjs-prebuilt": "^2.1.14",
"raw-loader": "^0.5.1",
"selenium-server": "^3.0.1",
"semver": "^5.3.0",
"shelljs": "^0.7.6",
"sinon": "^1.17.7",
"sinon-chai": "^2.8.0",
"url-loader": "^0.5.7",
"vue-style-loader": "^2.0.0",
"vue-unit": "^0.1.0",
"webpack-bundle-analyzer": "^2.2.1",
"webpack-dev-middleware": "^1.10.0",
"webpack-hot-middleware": "^2.16.1"
},
"dependencies": {
"axios": "^0.16.2",
"bootstrap-sass": "^3.3.7",
"browser-sync": "^2.18.13",
"browser-sync-webpack-plugin": "^1.2.0",
"chartist": "^0.10.1",
"easy-pie-chart": "^2.1.7",
"element-ui": "^1.4.2",
"fullcalendar": "^3.4.0",
"google-maps": "^3.2.1",
"jquery": "^3.2.1",
"jvectormap": "^2.0.4",
"laravel-mix": "^1.0",
"lodash": "^4.17.4",
"perfect-scrollbar": "^0.7.1",
"sweetalert2": "^6.6.5",
"vee-validate": "^2.0.0-rc.14",
"vue": "^2.4.4",
"vue-clickaway": "^2.1.0",
"vue-form-wizard": "^0.6.4",
"vue-nav-tabs": "^0.5.1",
"vue-notifyjs": "^0.1.8",
"vue-router": "^2.7.0",
"vue-template-compiler": "^2.4.4"
}
}
let mix = require('laravel-mix');
let path = require('path');
/*
|--------------------------------------------------------------------------
| Mix Asset Management
|--------------------------------------------------------------------------
|
| Mix provides a clean, fluent API for defining some Webpack build steps
| for your Laravel application. By default, we are compiling the Sass
| file for the application as well as bundling up all the JS files.
|
*/
function resolve (dir) {
return path.join(__dirname, '..', dir)
}
mix.disableNotifications();
mix.js('resources/assets/js/main.js', 'public/js/app.js')
.sass('resources/assets/sass/paper-dashboard.scss', 'public/css/app.css');
mix.browserSync(process.env.APP_URL);
if (mix.inProduction()) {
mix.version();
}
mix.webpackConfig({
resolve: {
alias: {
'src': path.resolve('resources/assets/js'),
}
}
});
@khoi-le
Copy link

khoi-le commented Jan 15, 2018

Would you mind sharing step-by-step instructions for integrating Laravel 5.5 clean install and Paper Dashboard (including file/folder locations to upload)?

@andcl
Copy link

andcl commented Mar 23, 2019

From the creator of Vue.js: https://github.com/yyx990803/laravel-vue-cli-3. Uses vue-cli-3 instead of webpack.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment