Npm scripts work for very superficial tasks, but fail to deliver even for such a simple task as live reload:<p>- You need to run both server and watcher from the same shell, and the proposed way is to use parallelshell which is not a robust tool such as Gulp. Specifically trying npm run dev as suggested leads to some error that, after termination, leave 4 processes running in background that you have to kill manually, or else you can&#x27;t access the same ports. Not fun.<p>- It requires to &quot;highjack&quot; your source files with script tags that I don&#x27;t feel belong there:
  &lt;script src=&quot;&#x2F;&#x2F;localhost:9091&#x2F;livereload.js&quot;&gt;&lt;&#x2F;script&gt;<p>Why Gulp plugins are better?<p>- Fast: use streams, no temporary files.
- Gulp plugins have uniform API: stream in, stream out; no massive command line options.
- Convenient and expressive node-glob abstraction to select files&#x2F;directories to be watched.
- Less magic, more control and understanding of what is going on, less chance and dependence on bugs.<p>Here is the absolutely basic LiveReload setup that I wasn&#x27;t able to achieve with Npm scripts:<p><a href="https:&#x2F;&#x2F;github.com&#x2F;dmitriz&#x2F;min-server" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;dmitriz&#x2F;min-server</a>