- Watched files changed ==> reload browser pages
- A separate livereload server that include both static-file-server(just script) and websocket
- You don't need install the livereload browser-extension,such as chrome,or other.
- Just only npm, don't need grunt or gulp or others, don't need download file livereload.js any more
- Simple and tiny: Only 3 Dependencies: tinylr , gaze, minimist
- Cross platform Windows, *nix(Mac-OSX or Linux).
$ npm install -g tinylrs
or npm install --save-dev tinylrs
<script src="http://localhost:35729/livereload.js?snipver=1"></script>
Just only inject the code.And you don't need download the file(livereload.js)!
run in bash directly (need install it globally first)
$ cd %your_project_dir%
$ tinylrs './your_watch_dir/**/*.*'
Maybe you should add char '' to include the target dir if you use it in osx(mac) or other unix like.
eg: http://localhost:8080/index
Now,browser page will be refreshed when your watched-target-files were changed!
$ tinylrs --help
Usage: tinylrs [options]
eg: tinylrs './dist/**/*.*'
tinylrs './dist/**/*.js,./dist/**/*.css,../../views/**/*.html'
tinylrs -d './dist/**/*.js,./dist/**/*.css' -p 35279
tinylrs --dirs='./dist/**/*.js,./dist/**/*.css' --port=35279
Options:
-h,--help show usage information
-V,--version show current version information
-d,--dirs<folder> *necessary!!* The director of watch targets files,
both path-array and single-path
-p,--port<integer> unnecessary! The server port,both websocket-server
and static-file-server,default 35279
-l,--lrfile<file> unnecessary! The filepath of 'livereload.js',
default a build-in-file
(1).param support the array,just like this: (array ele split by char ',')
$ tinylrs './watch_dir_0/**/*.js,./watch_dir_1/**/*.css,./watch_dir_2/**/*.html'
(2).You can also set the server port by runtime args:*
$ tinylrs -d './your_watch_dir/**/*.*' -p 66666
besides,you should set the same port to the <script> tag
<script src="http://localhost:66666/livereload.js?snipver=1"></script>
(3).run in your npm-scripts
1: package.json
{
"scripts":{
"tinylrs": "tinylrs -d './your_watch_dir/**/*.*' -p 66666"
}
}
2: run in bash
$ npm run tinylrs
var Tinylrs = require("tinylrs");
var myTlrs = Tinylrs({
watchList: [
"./dist/**/*.*",
"../public/views/*.html"
],
port: 66666,
lrfile: null
});
myTlrs.start();
// you can also use the myTlrs.server,it is a tiny-lr server instance
1.Install failed: You maybe include 'sudo' in front of command line,if use it on *unix os like linux or mac-osx
sudo npm i -g tinylrs
2.No matches found: xxxx/path/xxxx
check the directors you have type in,if use it on *unix os like linux or mac-osx