Skip to content

Commit 55a5a23

Browse files
committed
0.2.2:
- Switched from PreCSS (outdated) to the more recent core plugins - Added prerequisites to readme
1 parent 9060038 commit 55a5a23

File tree

5 files changed

+62
-36
lines changed

5 files changed

+62
-36
lines changed

README.md

Lines changed: 21 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,14 @@ Jekyll + Gulp.js + BrowserSync + PostCSS + Stylelint
44

55
## Features
66

7-
- PostCSS with PreCSS, Autoprefixer, CSS MQPacker, cssnano, and of course sourcemaps for development.
7+
- PostCSS with [postcss-advanced-variables](https://github.com/jonathantneal/postcss-advanced-variables), [postcss-preset-env](https://github.com/csstools/postcss-preset-env) (includes Autoprefixer), [postcss-nested](https://github.com/postcss/postcss-nested), [CSS MQPacker](https://github.com/hail2u/node-css-mqpacker), and [cssnano](https://github.com/cssnano/cssnano).
88
- UnCSS for production.
9-
- Jekyll build and rebuild with BrowserSync.
9+
- Jekyll build and rebuild with BrowserSync live reload.
1010
- Browserify or just gulp-concat, as you prefer.
1111
- Optimization (and minification) of images, HTML, CSS, JavaScript, JSON, and XML files.
1212
- Linting with JSHint and Stylelint.
1313
- Extensive Stylelint config, based on my [code-guide](https://github.com/michaelx/code-guide).
14+
- Sourcemap generation.
1415
- Responsive image creation, or image resizing, through either GraphicsMagick or ImageMagick.
1516
- Image sprites.
1617
- Gzip compression.
@@ -22,10 +23,26 @@ Jekyll + Gulp.js + BrowserSync + PostCSS + Stylelint
2223

2324
- User-guide
2425
- Modularizing the default Jekyll theme, to make use of the new 7-1 pattern
25-
- s3 preview task
26-
- s3 publish task
2726
- JSON-LD generator
2827

28+
## Prerequisites
29+
30+
Node.js (and npm, included), use [NVM](https://github.com/creationix/nvm) to install and manage versions. Currently tested with Node.js `v6.10.1` (LTS).
31+
32+
Ruby, use [rbenv](https://github.com/rbenv/rbenv) to install and manage versions. Currently tested with ruby `2.3.1p112`.
33+
34+
[Bundler](https://github.com/bundler/bundler), install with:
35+
36+
```sh
37+
gem install bundler
38+
```
39+
40+
[bower](https://github.com/bower/bower), install with:
41+
42+
```sh
43+
npm install -g bower
44+
```
45+
2946
## Installation
3047

3148
Clone the repository on your computer and change into the projects folder. Run:

gulp/config.js

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -91,11 +91,15 @@ module.exports = {
9191
src: srcAssets + '/styles/*.css',
9292
dest: developmentAssets + '/css',
9393
options: {
94-
precss: {},
95-
autoprefixer: {
96-
cascade: true
94+
advancedVariables: {},
95+
presetEnv: {
96+
autoprefixer: {
97+
cascade: true
98+
}
9799
},
98-
mqpacker: { sort: true }
100+
nested: {},
101+
mqpacker: { sort: true },
102+
cssnano: {}
99103
}
100104
},
101105

gulp/tasks/development/styles.js

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,15 @@
1-
var config = require('../../config').styles;
1+
var config = require('../../config').styles;
22

3-
var gulp = require('gulp');
4-
var postcss = require('gulp-postcss');
5-
var precss = require('precss');
6-
var autoprefixer = require('autoprefixer');
7-
var mqpacker = require('css-mqpacker');
8-
var cssnano = require('cssnano');
9-
var plumber = require('gulp-plumber');
10-
var sourcemaps = require('gulp-sourcemaps');
11-
var browsersync = require('browser-sync');
3+
var gulp = require('gulp');
4+
var postcss = require('gulp-postcss');
5+
var advancedVariables = require('postcss-advanced-variables');
6+
var presetEnv = require('postcss-preset-env');
7+
var nested = require('postcss-nested');
8+
var mqpacker = require('css-mqpacker');
9+
var cssnano = require('cssnano');
10+
var plumber = require('gulp-plumber');
11+
var sourcemaps = require('gulp-sourcemaps');
12+
var browsersync = require('browser-sync');
1213

1314
function onError (err) {
1415
console.log(err);
@@ -23,10 +24,11 @@ gulp.task('styles', function() {
2324

2425
// PostCSS plugins
2526
var processors = [
26-
precss(config.options.precss),
27-
autoprefixer(config.options.autoprefixer),
27+
advancedVariables(config.options.advancedVariables),
28+
presetEnv(config.options.presetEnv),
29+
nested(config.options.nested),
2830
mqpacker(config.options.mqpacker),
29-
cssnano()
31+
cssnano(config.options.cssnano)
3032
];
3133

3234
return gulp.src(config.src)

gulp/tasks/production/styles.js

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,14 @@
1-
var config = require('../../config').styles;
1+
var config = require('../../config').styles;
22

3-
var gulp = require('gulp');
4-
var postcss = require('gulp-postcss');
5-
var precss = require('precss');
6-
var autoprefixer = require('autoprefixer');
7-
var mqpacker = require('css-mqpacker');
8-
var cssnano = require('cssnano');
9-
var plumber = require('gulp-plumber');
10-
var browsersync = require('browser-sync');
3+
var gulp = require('gulp');
4+
var postcss = require('gulp-postcss');
5+
var advancedVariables = require('postcss-advanced-variables');
6+
var presetEnv = require('postcss-preset-env');
7+
var nested = require('postcss-nested');
8+
var mqpacker = require('css-mqpacker');
9+
var cssnano = require('cssnano');
10+
var plumber = require('gulp-plumber');
11+
var browsersync = require('browser-sync');
1112

1213
function onError (err) {
1314
console.log(err);
@@ -25,10 +26,11 @@ gulp.task('styles:production', function() {
2526

2627
// PostCSS plugins
2728
var processors = [
28-
precss(config.options.precss),
29-
autoprefixer(config.options.autoprefixer),
29+
advancedVariables(config.options.advancedVariables),
30+
presetEnv(config.options.presetEnv),
31+
nested(config.options.nested),
3032
mqpacker(config.options.mqpacker),
31-
cssnano()
33+
cssnano(config.options.cssnano)
3234
];
3335

3436
return gulp.src(config.src)

package.json

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
11
{
22
"name": "gulp-jekyll",
3-
"version": "0.2.1",
3+
"version": "0.2.2",
44
"description": "The build process for gulp-jekyll",
55
"author": "Michael Xander",
66
"repository": "michaelx/gulp-jekyll",
77
"devDependencies": {
8-
"autoprefixer": "^8.6.3",
98
"browser-sync": "^2.24.4",
109
"browserify": "^16.2.2",
1110
"browserify-shim": "^3.8.14",
@@ -38,9 +37,11 @@
3837
"gulp.spritesmith": "^6.9.0",
3938
"jshint": "^2.9.5",
4039
"jshint-stylish": "^2.2.1",
40+
"postcss-advanced-variables": "^2.3.3",
41+
"postcss-nested": "^3.0.0",
42+
"postcss-preset-env": "^5.2.0",
4143
"postcss-reporter": "^5.0.0",
4244
"postcss-uncss": "^0.14.0",
43-
"precss": "^3.1.2",
4445
"pretty-hrtime": "^1.0.3",
4546
"require-dir": "^1.0.0",
4647
"run-sequence": "^2.2.1",

0 commit comments

Comments
 (0)