Generate a gulpfile for Sails.
npm install sails-generate-gulpfilegulpfile generator for use with the Sails command-line interface that works with gulp and sails lift.
sh
$ npm install -g sails-generate-backend-gulp
$ npm install -g sails-generate-gulpfile
$ npm install -g sails-generate-frontend-gulp
$ npm install -g sails-generate-new-gulp
`
.sailsrc
.sailsrc needs to be added to the working dir with the following:
`sh
{
"generators": {
"modules": {
"new": "sails-generate-new-gulp",
"frontend": "sails-generate-frontend-gulp",
"backend": "sails-generate-backend-gulp",
"gulpfile": "sails-generate-gulpfile"
}
}
}
`
$3
##### On the command line
`sh
$ sails generate gulpfile
`
##### In a node script
`javascript
var path = require('path');
var sailsgen = require('sails-generate');
var scope = {
rootPath: path.resolve(__dirname)
};
sailsgen(require('sails-generate-gulpfile'), scope, function (err) {
if (err) throw err;
// It worked.
});
`
$3
The gulpfile.js is configured for only autoloading a few gulp module types (types as in name variations like gulp, run and main)
`sh
plugins = require('gulp-load-plugins')({
pattern: ['gulp-', 'merge-', 'run-', 'main-'], // the glob to search for
replaceString: /.*-/, // what to remove from the name of the module when adding it to the context
lazy: true, // whether the plugins should be lazy loaded on demand
}),
`
If you would like to add more gulp modules for creating tasks, install the module and add the begining name of the module to the plugins variable above like ` jump-* `. This will then lazy autoload all modules that have the prefix jump- in the name.
The plugin can then be called in task with ` plugins.`, so gulp-bower becomes plugins.bower and main-gulp-files becomes plugins.files.
See gulp-load-plugins for more options on naming autoloaded plugins
$3
Because this system uses gulp notify, there is a toggle to turn it on or off (default is off). If you would like to use this feature you must install an app that works with gulp-notify.
Mac OS X: No external installation needed (if Mac OS X 10.8 or higher).
Linux: Notify-send should be installed (On Ubuntu this is installed per default)
Windows: Growl for Windows should be installed.
just change
`sh
growl = false;
`
to
`sh
growl = true;
`
$3
To get started quickly and see this generator in action, run the bin/index.js script:
`sh
$ git clone YOUR_FORK_OF_THIS_REPO sails-generate-gulpfile-fork
$ cd sails-generate-gruntfile-fork
$ npm install
$ node ./bin
`
bin/index.js is a simple script, bundled only for convenience, that runs the generator with hard-coded scope variables. Please feel free to modify that file however you like! Also see CONTRIBUTING.md for more information on overriding/enhancing generators.
$3
See FAQ.md`.