0.1.0 • Published 8 years ago

gulp-rjs-optimizer v0.1.0

Weekly downloads
3
License
MIT
Repository
github
Last release
8 years ago

#gulp-rjs-optimizer

gulp-rjs-optimizer on npm Dependency Status Build Status

Information

This is a fork of jorrit/gulp-requirejs mainly to add back support for node 0.10

A small, simple, very easy wrapper around the require.js optimizer to work with gulp.js

##Installation

Simply add gulp-rjs-optimizer as a dev-dependency in your package.json or run

$ npm install --save-dev gulp-rjs-optimizer

Usage

Because the require.js optimizer (r.js) is a kind of build system in itself we can't use the gulp.src([...]) syntax at the moment (I might add this in future), instead this wrapper itself emits a pipable stream, holding a 'virtual' file, in which the result of the r.js build process are saved.

The resulting stream can be treated like a regular gulp.src(...) stream.

NOTE: The built in minification/obfuscation is deactivated by default. It is recommended to use a gulp plugin like gulp-uglify for minification, but you can enable r.js minification by setting the optimize option to uglify to minify using r.js.

var gulp = require('gulp'),
    rjs = require('gulp-rjs-optimizer');

gulp.task('requirejsBuild', function() {
    return rjs({
        baseUrl: 'path/to/your/base/file.js',
        out: 'FILENAME_TO_BE_OUTPUTTED',
        shim: {
            // standard require.js shim options
        },
        // ... more require.js options
    })
    .pipe(gulp.dest('./deploy/')); // pipe it to the output DIR
});

Note: In order to let gulp know that the optimization completes, return the rjs stream.

Error handling

gulp-rjs-optimizer will emit errors when you don't pass an options object and if the baseUrl or out properties are undefined.

The require.js optimizer itself might also emit errors; unfortunately there's no way of catching them elegantly at the moment.

Options

The options object supports the same parameters as the require.js optimizer.