Simple file change monitoring for any kind of development.


Simple file change monitoring for any kind of development.


Having a utility that can restart or recompile or reconfigure or rewhatever whenever you change a file can be incredibly convenient. Many programs of this sort are geared to work with a specific toolchain or tend to be overly complicated for what should be a simple task.

No worries. Noprob's got your back, no problem.


Install npm. (it comes with Node.js).

Run: $ sudo npm -g install noprob


  • -h, --help
    • Output usage information.
  • -x, --exec [command]
    • String to execute globally on any file change.
    • You can wrap command strings in single ' or double " quotes.
  • -l, --local [command]
    • String to execute locally on any file that's changed.
    • Use <file> to mark where to insert the change file's name in the command string.
  • -w, --watch [directory]
    • Directory to watch.
  • -e, --extension [extensions]
    • List of file extensions to watch.
    • Wrap in single or double quotes and seperate extensions with a |.
  • -d, --dot
    • Watch hidden dot files.
    • Files that begin with a '.' or that are in a folder that begins with a '.' are ignored by default. Use this option to watch them.

Usage and Examples

There are two ways to execute commands in Noprob: globally and locally.

Global commands run on every file change without worrying about specific files. They are defined with -x or --exec.

Run and restart a node server on javascript source changes:

  • $ noprob -x 'node server.js' -e 'js'

Local commands accept the <file> tag which will insert the changed file's name into the command. They are defined with -l or --local.

Compile individual coffescript files in the "src" folder into javascript on demand (closely mimics coffescript's internal -w option):

  • $ noprob -l 'coffee -c <file>' -e 'coffee' -w src