@taskr/browserify
v1.1.0
Published
Browserify plugin for Taskr.
Downloads
3
Readme
@taskr/browserify
Browserify plugin for Taskr
Install
$ npm install --save-dev @taskr/browserify
API
.browserify(options)
Please see Browserify's documentation for a full list of available options.
options.entries
Type: string
or array
Default: ''
Define "entry" files, which represent new bundles. Optional. See an example usage.
Note: If not specified,
@taskr/browserify
will assumes all files withintask.source()
are new bundle entries.
Important: This plugin (
@taskr/browserify
) enforces new a bundle per entry unlikebrowserify
.
Using this option is particularly handy when your task (eg, scripts
) contains plugin methods whose source files should be more than your entry files.
exports.scripts = function * (task) {
yield task.source('src/scripts/app.js')
.xo() // ONLY lints one file
.browserify() // make 'app.js' bundle
.target('dist/js'); //=> dist/js/app.js
/* VS */
yield task.source('src/**/*.js')
.xo() // lints ALL files
.browserify({
entries: 'src/scripts/app.js'
}) // make 'app.js' bundle
.target('dist/js'); //=> dist/js/app.js
}
Usage
Basic
exports.default = function * (task) {
yield task.source('src/scripts/app.js')
.browserify()
.target('dist');
};
Transforms
There's a huge list of browserify transforms available to you. You may require()
any of them & include their functionalities in your bundles.
exports.default = function * (task) {
yield task.source('src/scripts/app.js')
.browserify({
transform: [require('reactify')]
})
.target('dist');
};
Multiple Bundles
There are a handful of ways you can create multiple browserify
"bundles" without the need to repeat your task.
Direct Paths via task.source()
exports.default = function * (task) {
yield task.source([
'src/scripts/app.js',
'src/scripts/admin.js'
])
.browserify()
.target('dist');
}
Glob Patterns via task.source()
exports.default = function * (task) {
yield task.source('src/entries/*.js')
.browserify()
.target('dist');
}
Direct Paths via opts.entries
exports.default = function * (task) {
yield task.source('src/**/*.js')
.browserify({
entries: [
'src/scripts/app.js',
'src/scripts/admin.js'
]
})
.target('dist');
}
Support
Any issues or questions can be sent to the Taskr monorepo.
Please be sure to specify that you are using @taskr/browserify
.
License
MIT © Luke Edwards