From 55312785d86cd21ce08313d300ff0f054d17419a Mon Sep 17 00:00:00 2001 From: Antoine Rey Date: Sun, 23 Oct 2016 19:10:51 +0200 Subject: [PATCH] Using gulp for minifying CSS and JS --- .gitignore | 4 --- springboot-petclinic-client/.gitignore | 3 ++ springboot-petclinic-client/gulpfile.js | 42 ++++++++++++++++++++++++ springboot-petclinic-client/package.json | 5 ++- springboot-petclinic-client/pom.xml | 8 ++++- 5 files changed, 56 insertions(+), 6 deletions(-) create mode 100644 springboot-petclinic-client/.gitignore create mode 100644 springboot-petclinic-client/gulpfile.js diff --git a/.gitignore b/.gitignore index 22915b52e..b06a9e2c1 100644 --- a/.gitignore +++ b/.gitignore @@ -12,7 +12,3 @@ target/ # Branch switching generated/ - -# Front-end client -node_modules/ -bower_components/ \ No newline at end of file diff --git a/springboot-petclinic-client/.gitignore b/springboot-petclinic-client/.gitignore new file mode 100644 index 000000000..e6eb5c8fd --- /dev/null +++ b/springboot-petclinic-client/.gitignore @@ -0,0 +1,3 @@ +node_modules/ +bower_components/ +npm-debug.log \ No newline at end of file diff --git a/springboot-petclinic-client/gulpfile.js b/springboot-petclinic-client/gulpfile.js new file mode 100644 index 000000000..9406cf50d --- /dev/null +++ b/springboot-petclinic-client/gulpfile.js @@ -0,0 +1,42 @@ +var gulp = require('gulp'); +var cleanCSS = require('gulp-clean-css'); +var uglify = require('gulp-uglify'); + +var paths = { + "css" : "src/css/*", + "fonts" : "src/fonts/*", + "images" : "src/images/*", + "html" : "src/scripts/**/*.html", + "js" : "src/scripts/**/*.js", + "dist" : "target/dist/" +}; + +gulp.task('minify-css', function() { + return gulp.src(paths.css) + .pipe(cleanCSS()) + .pipe(gulp.dest(paths.dist + 'css/')); +}); + +gulp.task('minify-js', function() { + return gulp.src(paths.js) + .pipe(uglify()) + .pipe(gulp.dest(paths.dist + 'scripts/')); +}); + +gulp.task('copy-fonts', function() { + return gulp.src(paths.fonts) + .pipe(gulp.dest(paths.dist + 'fonts/')) +}); + +gulp.task('copy-html', function() { + return gulp.src(paths.html) + .pipe(gulp.dest(paths.dist + 'scripts/')) +}); + +gulp.task('copy-images', function() { + return gulp.src(paths.images) + .pipe(gulp.dest(paths.dist + 'images/')) +}); + +gulp.task('default', ['minify-css', 'minify-js', 'copy-fonts', + 'copy-html', 'copy-images'], function() {}); diff --git a/springboot-petclinic-client/package.json b/springboot-petclinic-client/package.json index 2e809be06..3bd8abfb3 100644 --- a/springboot-petclinic-client/package.json +++ b/springboot-petclinic-client/package.json @@ -2,6 +2,9 @@ "private": true, "dependencies": {}, "devDependencies": { - "bower": "^1.7.9" + "bower": "^1.7.9", + "gulp": "^3.9.1", + "gulp-clean-css": "^2.0.6", + "gulp-uglify": "^1.5.3" } } diff --git a/springboot-petclinic-client/pom.xml b/springboot-petclinic-client/pom.xml index 04f549a94..fd39c5453 100644 --- a/springboot-petclinic-client/pom.xml +++ b/springboot-petclinic-client/pom.xml @@ -18,7 +18,7 @@ - ${basedir}/src + ${project.build.directory}/dist ${basedir}/bower_components @@ -54,6 +54,12 @@ bower + + gulp build + + gulp + +