JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 57051
  • Score
    100M100P100Q150121F
  • License MIT

"A simple recursive directory watcher."

Package Exports

  • simple-watcher

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (simple-watcher) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

Simple Watcher

A simple recursive directory watcher.

But why?

I know there's plenty of them out there, but most don't seem to care about the recursive option of Node's fs.watch(), which significantly improves performance on the supported platforms, especially for large directories.

Features:

  • Dead simple and dead lightweight.
  • No dependencies.
  • Leverages the recursive options on OS X and Windows; uses a fallback for other platforms.
  • Takes care of WinAPI's ReadDirectoryChangesW double reporting.

Usage

const watch = require('simple-watcher')

/**
 * Recursively watches for directory changes.
 * @param {string} workingDir - Directory to watch.
 * @param {function} callback - Triggered on change.
 * @param {number} tolerance - Interval in which multiple changes to the same file
 *                             on Windows will be treated as one; default is 200ms.
 */
watch('/path/to/directory', (filePath) => {
  console.log(`Changed: ${filePath}`)
})