Run nodev as a grunt task for easy configuration and integration with the rest of your workflow. This is essentially a clone of grunt-nodemon by Chris Wren, however I had difficulties with node-inspector so I edited the package to run nodev instead of nodemon.
If you haven't used grunt before, be sure to check out the Getting Started guide, as it explains how to create a gruntfile as well as install and use grunt plugins. Once you're familiar with that process, install this plugin with this command:
npm install grunt-nodev --save-dev
Then add this line to your project's Gruntfile.js
gruntfile:
grunt.loadNpmTasks('grunt-nodev');
The minimal usage of nodev runs with no options:
nodev: {
dev: {}
}
When this is run, nodev will look at the package.json
file for the main
property and run its value as a command in node.
Here is a config that uses all of the available options for nodev:
nodev: {
prod: {
options: {
file: 'test/server.js',
args: ['production'],
ignoredFiles: ['README.md', 'node_modules/**'],
watchedExtensions: ['js', 'coffee'],
watchedFolders: ['test', 'tasks'],
debug: true,
delayTime: 1
}
},
exec: {
options: {
exec: 'less'
}
}
}
A common use case is to run nodev
with other tasks concurrently. This can be achieved with the following config, which uses grunt-concurrent to run nodev and watch in a single terminal tab:
concurrent: {
target: {
tasks: ['nodev', 'watch'],
options: {
logConcurrentOutput: true
}
}
}
Type: string
This is file that nodev runs and restarts when changes are detected.
Type: Array
of strings
This is the list of arguments to be passed to your file.
Type: Array
of string globs
This is a list of ignored files specified by a glob pattern. Here is an explanation of how to use the patterns to ignore files. This task will create a .nodevignore
file in your repo based on these settings which nodev reads when it starts.
*** THIS IS NOT WORKING AT PRESENT ***
Type: Array
of strings
Default: '.'
List of folders to watch for changes if you don't want to watch the root folder and its subdirectories.
Type: Boolean
Optionally launch the node.js debug server.
Type: Number
Delay the restart of nodev by a number of seconds when compiling a large amount of files so that the app doesn't needlessly restart after each file.
Type: string
You can use nodev to execute a command outside of node. Use this option to specify a command as a string with the argument being the file parameter above. You can read more on exec here.
0.0.0 - Initial release 0.0.1 - ReadMe update to exclude Watched Extensions