Watchman watches files and runs things when they change. It consists of watches and triggers. Watches are folders to watch for changes in, and triggers are things to do when changes happen.
You can watch a folder with watchman watch ~/my/project, and stop watching it with watchman watch-del ~/my/project.
When you delete a watch, it also will delete any triggers associated with the watch.
Triggers contain a watch, a name, some patterns to match against filenames, and a command to run.
watchman -- trigger ~/foo css '*.scss' '*.sass' -- npm buildcss
This creates a trigger named
css for the watch
~/foo. It will look for files matching the pattern
*.sass, and run
npm buildcss plus the filename when they change.
If the file
~/foo/foobar.scss changed, then watchman would run the command
npm buildcss foobar.scss.