Watch, that actually is an endless stream


File watcher, that uses super-fast chokidar and emits vinyl objects.

Run npm install gulp-watch.

var gulp = require('gulp'),
    watch = require('gulp-watch');
gulp.task('stream', function () {
gulp.task('callback', function () {
    watch('css/**/*.css', function () {

Protip: until gulpjs 4.0 is released, you can use gulp-plumber to prevent stops on errors.

More examples can be found in docs/

Creates watcher that will spy on files that were matched by glob which can be a glob string or array of glob strings.

Returns pass through stream, that will emit vinyl files (with additional event property) that corresponds to event on file-system.

This function is called, when some events is happens on file-system. All incoming files that piped in will be grouped and passed to events stream as is.

  • vinyl — is vinyl object that corresponds to file that caused event. Additional event field is added to determine what caused changes.

Possible events:

  • add - file was added to watch or created
  • change - file was changed
  • unlink - file was deleted

This object is passed to chokidar options directly. Options for gulp.src are also available. If you do not want content from watch, then add read: false to the options object.


Type: Boolean
Default: true

Indicates whether chokidar should ignore the initial add events or not.

Type: Array
Default: ['add', 'change', 'unlink']

List of events, that should be watched by gulp-watch. Contains event names from chokidar.

Type: String
Default: undefined

Use explicit base path for files from glob. Read more about base and cwd in gulpjs docs.

Type: String
Default: undefined

Name of the watcher. If it present in options, you will get more readable output.

Type: Boolean
Default: false

This options will enable verbose output.

Type: Number
Default: 10

Wait for readDealy milliseconds before read file.

Returned Stream from constructor have some useful methods:

  • add(path / paths)
  • unwatch(path / paths)
  • close()
  • end
  • ready
  • error


MIT (c) 2014 Vsevolod Strukchinsky (