Skip to content

Commit

Permalink
Add image compression
Browse files Browse the repository at this point in the history
  • Loading branch information
gocomet committed Apr 25, 2016
1 parent fd7d2e8 commit 8618d76
Show file tree
Hide file tree
Showing 5 changed files with 64 additions and 11 deletions.
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
.DS_Store
.DS_Store
node_modules/
56 changes: 51 additions & 5 deletions build-script/Gulpfile.js
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
* and npm modules
*/
var pkg = require('./package.json');
var gulp = require('gulp');
var gulp = require('gulp');
var gulpif = require('gulp-if');
var srcmaps = require('gulp-sourcemaps');
var sass = require('gulp-sass');
Expand All @@ -27,7 +27,9 @@ var stripDebug = require('gulp-strip-debug');
var uglify = require('gulp-uglify');
var order = require('gulp-order');
var convert = require('gulp-utf8-convert');
var headerfooter = require('gulp-headerfooter');
var headerfooter = require('gulp-headerfooter');
var imagemin = require('gulp-imagemin');
var pngquant = require('imagemin-pngquant');

/**
* script vars
Expand Down Expand Up @@ -59,6 +61,14 @@ var themeScss = [
pathToScss + 'vendor/theme/*.scss.liquid'
];

var themeImgs = [
pathToDest + '/*.jpg',
pathToDest + '/*.jpeg',
pathToDest + '/*.png',
pathToDest + '/*.gif',
pathToDest + '/*.svg'
];

/**
* gulp srcStyles task
*
Expand Down Expand Up @@ -238,8 +248,6 @@ gulp.task('srcScripts', function() {
*/
gulp.task('scripts', ['srcScripts', 'themeScripts'], function() {

console.log(srcJs);

return gulp.src(['tmp/js/theme.js.liquid', 'tmp/js/' + pkg.javascriptName + '.js'])

// final file name
Expand All @@ -253,6 +261,29 @@ gulp.task('scripts', ['srcScripts', 'themeScripts'], function() {

});

/**
* gulp images task
*
* `gulp images`
*
* compress all images in theme assets folder
*/
gulp.task('images', function() {

return gulp.src(themeImgs)

.pipe(imagemin({

progressive: true,
svgoPlugins: [{removeViewBox: false}],
use: [pngquant()]

}))

.pipe(gulp.dest(pathToDest));

});

/**
* gulp watch task
*
Expand Down Expand Up @@ -281,6 +312,21 @@ gulp.task('watch', function() {

});

/**
* gulp compile task
*
* `gulp compile`
*
* compiles all scss, js, and compresses images
* useful for forcing a production compile
*/
gulp.task('compile', function() {

isProduction = true;
gulp.start('styles', 'scripts', 'images');

});

/**
* gulp default task
*
Expand All @@ -291,7 +337,7 @@ gulp.task('watch', function() {
*/
gulp.task('default', function() {

gulp.start('styles', 'scripts');
gulp.start('styles', 'scripts', 'images');
gulp.start('watch');

});
14 changes: 9 additions & 5 deletions build-script/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,17 +15,21 @@ Make sure you're running Node v5.8 using NVM, and that there is no node_modules/

## Installation

1. use node v5.8
2. delete `node_modules/` dir, if exists
3. drop `Gulpfile.js` and `package.json` into project root
4. run `sudo npm install` from project root
1. go to project directory
2. use node v5.8
3. delete `node_modules/` dir, if exists
4. drop `Gulpfile.js` and `package.json` into project root
5. create src/ folder and subfolders if they don't exist
6. run `sudo npm install` from project root

## Commands

- `gulp styles`: compiles stylesheets
- `gulp scripts`: compiles JS
- `gulp images`: compresses images in assets folder
- `gulp watch`: watches for changes in src folder, then compiles CSS and/or JS
- `gulp`: runs all three commands above, in sequence
- `gulp`: runs all four commands above, in sequence
- `gulp compile`: runs a production compile of stylesheets and JS, and compresses images

## Compiling Source JS and Sass

Expand Down
2 changes: 2 additions & 0 deletions build-script/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
"gulp-cssbeautify": "^0.1.3",
"gulp-headerfooter": "^1.0.3",
"gulp-if": "^2.0.0",
"gulp-imagemin": "^2.4.0",
"gulp-jshint": "^2.0.0",
"gulp-minify-css": "^1.2.4",
"gulp-order": "^1.1.1",
Expand All @@ -19,6 +20,7 @@
"gulp-strip-debug": "^1.1.0",
"gulp-uglify": "^1.5.3",
"gulp-utf8-convert": "0.0.7",
"imagemin-pngquant": "^4.2.2",
"install": "^0.6.1",
"jshint": "^2.9.1"
}
Expand Down
Binary file added build-script/theme/assets/comet_logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit 8618d76

Please sign in to comment.