Neuron Powered Motorization


    2.0.0 • Public • Published

    Chokidar CLI

    Build Status Build Status

    Fast cross-platform command line utility to watch file system changes.

    The underlying watch library is Chokidar, which is one of the best watch utilities for Node. Chokidar is battle-tested.


    If you need it only with NPM scripts:

    npm install @aoberoi/chokidar-cli

    Or globally

    npm install -g @aoberoi/chokidar-cli


    By default chokidar streams changes for all patterns to stdout:

    $ chokidar '**/*.js' '**/*.less'

    Each change is represented with format event:relativepath. Possible events: add, unlink, addDir, unlinkDir, change.

    Output only relative paths on each change

    $ chokidar '**/*.js' '**/*.less' | cut -d ':' -f 2-

    Run npm run build-js whenever any .js file changes in the current work directory tree

    chokidar '**/*.js' -c 'npm run build-js'

    Watching in network directories must use polling

    chokidar '**/*.less' -c 'npm run build-less' --polling

    Pass the path and event details in to your custom command

    chokidar '**/*.less' -c 'if [ "{event}" = "change" ]; then npm run build-less -- {path}; fi;'

    Detailed help

    Usage: chokidar <pattern> [<pattern>...] [options]
    Glob pattern to specify files to be watched.
    Multiple patterns can be watched by separating patterns with spaces.
    To prevent shell globbing, write pattern inside quotes.
    Guide to globs:
      -c, --command           Command to run after each change. Needs to be
                              surrounded with quotes when command contains spaces.
                              Instances of `{path}` or `{event}` within the command
                              will be replaced by the corresponding values from the
                              chokidar event.
      -d, --debounce          Debounce timeout in ms for executing command
                                                                      [default: 400]
      -t, --throttle          Throttle timeout in ms for executing command
                                                                      [default: 0]
      -s, --follow-symlinks   When not set, only the symlinks themselves will be
                              watched for changes instead of following the link
                              references and bubbling events through the links path
                                                          [boolean] [default: false]
      -i, --ignore            Pattern for files which should be ignored. Needs to be
                              surrounded with quotes to prevent shell globbing. The
                              whole relative or absolute path is tested, not just
                              filename. Supports glob patters or regexes using
                              format: /yourmatch/i
      --initial               When set, command is initially run once
                                                          [boolean] [default: false]
      --concurrent            When set, command is not killed before invoking again
                                                          [boolean] [default: false]
      -p, --polling           Whether to use fs.watchFile(backed by polling) instead
                              of This might lead to high CPU utilization.
                              It is typically necessary to set this to true to
                              successfully watch files over a network, and it may be
                              necessary to successfully watch files in other non-
                              standard situations         [boolean] [default: false]
      --poll-interval         Interval of file system polling. Effective when --
                              polling is set                          [default: 100]
      --poll-interval-binary  Interval of file system polling for binary files.
                              Effective when --polling is set         [default: 300]
      --verbose               When set, output is more verbose and human readable.
                                                          [boolean] [default: false]
      --silent                When set, internal messages of chokidar-cli won't be
                              written.                    [boolean] [default: false]
      -h, --help              Show help                                    [boolean]
      -v, --version           Show version number                          [boolean]
      chokidar "**/*.js" -c "npm run build-js"  build when any .js file changes
      chokidar "**/*.js" "**/*.less"            output changes of .js and .less


    Thanks to Kimmo Brunfeldt for starting this project and taking it very far. I maintained a temporary fork in order to land a feature that wasn't making any progress until December 2018, at which point I decided to take the "temporary" label off. This project wouldn't be possible without all the contributors on the original project.


    npm i @aoberoi/chokidar-cli

    DownloadsWeekly Downloads






    Unpacked Size

    28 kB

    Total Files


    Last publish


    • aoberoi