People suck at repetitive tasks.
- Linting
- Transpiling
- Minifying
- Combining (concat)
- Goodbye Compass
- Goodbye, Sprockets! A Grunt-based Rails Asset Pipeline
- Taking the asset pipeline out of Rails
- Getting your PageSpeed score up
- Takana - Like BrowserSync?
- Creating a web app with Grunt
- Brunch
- Auto-formatting JavaScript Code Style
- BCC Wraith
- ally.js
- Controversial state of JavaScript tooling
- JavaScript Modules
- The complete guide to ES6 with Babel 6
- 6 things you need to know about Babel 6
- Babel plugins
- Documentation.js
- ES Class Fields & Static Properties
- Babel Plugin Handbook
- See all the monorepo for Babel packages here
Babel 6 relies on plugins. There are 2 types of plugins: syntax and transform.You use presets to consume plugins. Each preset comes with a set of plugins so you don't have to wire them up separately.
Bower is meant to work with build tools rather than replace them. Bower is not built with opinions on scripting loader or modular loading. It is not concerned with how the assets it manages get included in your web pages.
!name- Matches any single character not inname{s1, s2, s3}- Matches any of the strings given (separated by commas)
Gulp has built-in watcher. Grunt uses JSON-like data configuration files; Gulp uses leaner, simpler JavaScript code.
gulp.src(glob) /* Returns a readable stream */
gulp.dist(glob) /* Returns a writable stream */
// 1 read and 2 writes
gulp.task('build-stuff', function() {
return gulp.src('js/**/*.js')
.pipe(concat('all.js'))
.pipe(gulp.dest('build'))
.pipe(uglify())
.pipe(rename('all.min.js'))
.pipe(gulp.dest('build'))
});
- A blank project with Gulp.js as build system
- Presentation on Gulp
- Gulp - The streaming build system
- https://www.youtube.com/watch?v=Blqaio9HaHA
- Error management in gulp
- gulp-browser-sync
- gulp-jshint
- gulp-autoprefixer
- gulp-changed
- gulp-imagemin
- gulp-strip-debug
- gulp-uglify
- gulp-concat
- gulp-svgmin
- gulp-cssmin
- gulp-htmlmin
- jshint-stylish
- grunt-montage
- gulp-if
- gulp-load-plugins
- gulp-colorguard
- Critical path
No context between transformations. More tasks, more slow-down. TMP file hell!
"maxparams": 4
"maxdepth": 4
"maxstatements": 20
"maxlen": 100
"maxcomplexity": 7