#liveload
A server which detect the file change and reload the resource at client side automatically, could be also used as a connect middleware for file watching and livereload server with snippet contains script tag injected on the fly.
About the snippet of script tag
##Installation
via npm:
$ npm install -g liveload
##File change notification
Need to install some sofeware to support the notification, refer to https://github.com/visionmedia/node-growl
##Use as static server
Goto the directory you want to serve, and type:
$ liveload
And enjoy live edit of css/js/html files.
##Use as connect middleware
var connect = require('connect')
, http = require('http')
, liveload = require('liveload');
var app = connect();
var root = process.cwd();
app.use(liveload({root:root, files:/.(js|css|html)$/,excludes:/^node_modules$/}))
.use(connect['static'](root))
.use(connect.directory(root));
http.createServer(app).listen(3000);options
rootroot directory for watching files, could be array of directory path, this is requiredfilesregexp for watching files eg:/\.(html|css|js)$/excludeexcludes regex used for exclude foldersinjectboolean value indicate whether to inject the script element on the fly, defaulttrueportport number for the livereload server, default35927
##Reset maxinum number for file watch
Nodejs would report an error if there's too many files for watching due to system limitation, on Linux you can change that by adding fs.inotify.max_user_watches = 524288 to the file etc/sysctl.conf and restart the process by command:
sudo sysctl -p