onchange-mini

1.0.2 • Public • Published

onchange-mini

run a command on file(s) change, the minimalist way

Motivation

It happened repetively that onchange didn't work for me, for reasons I couldn't track down. So, out of frustration, I wrote a minimalist implementation that would just do the thing I needed: watching a few files and running a script when they change. And it worked! So I wrapped it into this module, mostly for my own use, but maybe you will find it useful too.

Installation

To make it accessible to scripts in a project (learn more):

npm install --save-dev onchange-mini

Or to make it accessible globally:

npm install -g onchange-mini

How-to

Watch file(s) changes

onchange-mini ./a/file/to/watch ./another/file -- echo 'the wind of CHAaaAAAaaaNGE ♪ ♫'
# works great with npm scripts 
onchange-mini ./a/file/to/watch ./another/file -- npm run build'

Watch directories

onchange-mini ./a/folder/to/watch ./another/folder -- the command to execute

⚠️ 1️⃣ this will only trigger an event when a file is created, renamed, or removed, not when the files themselves change.

⚠️ 2️⃣ this isn't watching recursively: any file change in subfolders won't be detected

You can work around ⚠️ 1️⃣ by watching both the directory and its files like so

onchange-mini ./a/folder/to/watch ./a/folder/to/watch/* -- the command to execute

but beware that it needs to be restarted to watch new files

Debug

export DEBUG=true; onchange-mini ./a/file/to/watch -- the command to execute

For any other feature

Option 1: use onchange if it works for you

Option 2:

  • open ./index.js
  • hack your way
  • minimalist PR welcome

Package Sidebar

Install

npm i onchange-mini

Weekly Downloads

0

Version

1.0.2

License

MIT

Last publish

Collaborators

  • maxlath