Browse Source

Initial commit

master
Sven Slootweg 6 years ago
parent
commit
b81c834246
  1. 21
      README.md
  2. 24
      gulpfile.js
  3. 3
      index.js
  4. 23
      lib/index.js
  5. 36
      package.json
  6. 26
      src/index.js

21
README.md

@ -0,0 +1,21 @@
# gulp-preset-scss
Just an SCSS preset for Gulp.
## License
[WTFPL](http://www.wtfpl.net/txt/copying/) or [CC0](https://creativecommons.org/publicdomain/zero/1.0/), whichever you prefer. A donation and/or attribution are appreciated, but not required.
## Donate
My income consists largely of donations for my projects. If this module is useful to you, consider [making a donation](http://cryto.net/~joepie91/donate.html)!
You can donate using Bitcoin, PayPal, Flattr, cash-in-mail, SEPA transfers, and pretty much anything else.
## Contributing
Pull requests welcome. Please make sure your modifications are in line with the overall code style, and ensure that you're editing the files in `src/`, not those in `lib/`.
Build tool of choice is `gulp`; simply run `gulp` while developing, and it will watch for changes.
Be aware that by making a pull request, you agree to release your modifications under the licenses stated above.

24
gulpfile.js

@ -0,0 +1,24 @@
var gulp = require('gulp');
var gutil = require('gulp-util');
var babel = require('gulp-babel');
var cache = require('gulp-cached');
var remember = require('gulp-remember');
var plumber = require('gulp-plumber');
var source = ["src/**/*.js"]
gulp.task('babel', function() {
return gulp.src(source)
.pipe(plumber())
.pipe(cache("babel"))
.pipe(babel({presets: ["es2015"]}).on('error', gutil.log)).on('data', gutil.log)
.pipe(remember("babel"))
.pipe(gulp.dest("lib/"));
});
gulp.task('watch', function () {
gulp.watch(source, ['babel']);
});
gulp.task('default', ['babel', 'watch']);

3
index.js

@ -0,0 +1,3 @@
'use strict';
module.exports = require("./lib");

23
lib/index.js

@ -0,0 +1,23 @@
'use strict';
var loggerPartial = require("@joepie91/gulp-partial-logger");
var livereloadPartial = require("@joepie91/gulp-partial-livereload");
var cache = require("gulp-cached");
var sass = require("gulp-sass");
module.exports = function (options) {
var cacheKey = options.cacheKey != null ? options.cacheKey : "preset";
var streamList = [cache(cacheKey), sass()];
if (options.livereload != null) {
streamList.push(livereloadPartial(options.livereload));
}
return loggerPartial("scss", streamList, {
logger: {
basePath: options.basePath
}
});
};

36
package.json

@ -0,0 +1,36 @@
{
"name": "@joepie91/gulp-preset-scss",
"version": "1.0.0",
"description": "A Gulp preset for SCSS stylesheets",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"repository": {
"type": "git",
"url": "git://github.com/joepie91/node-gulp-preset-scss"
},
"keywords": [
"gulp",
"preset",
"sass",
"scss"
],
"author": "Sven Slootweg",
"license": "WTFPL",
"dependencies": {
"@joepie91/gulp-partial-livereload": "^1.0.0",
"@joepie91/gulp-partial-logger": "^1.0.0",
"gulp-cached": "^1.1.0",
"gulp-sass": "^2.2.0"
},
"devDependencies": {
"babel-preset-es2015": "^6.6.0",
"gulp": "^3.9.1",
"gulp-babel": "^6.1.2",
"gulp-cached": "^1.1.0",
"gulp-plumber": "^1.1.0",
"gulp-remember": "^0.3.0",
"gulp-util": "^3.0.7"
}
}

26
src/index.js

@ -0,0 +1,26 @@
'use strict';
const loggerPartial = require("@joepie91/gulp-partial-logger");
const livereloadPartial = require("@joepie91/gulp-partial-livereload");
const cache = require("gulp-cached");
const sass = require("gulp-sass");
module.exports = function(options) {
let cacheKey = (options.cacheKey != null) ? options.cacheKey : "preset";
let streamList = [
cache(cacheKey),
sass()
];
if (options.livereload != null) {
streamList.push(livereloadPartial(options.livereload));
}
return loggerPartial("scss", streamList, {
logger: {
basePath: options.basePath
}
});
}
Loading…
Cancel
Save