dweb
Develop web pages quickly with instant browser refresh.
dweb is a simple node.js webserver for Linux that watches a local directory for
file modifications, and then automatically reloads any pages loaded in a browser window.
This includes HTML and stylesheets like CSS or Less.
dweb does this by listening for inotify events on Linux and passing them to any
pages that have been served via a socket.io channel. It does all this transparently
by modifying HTML files on-the-fly to inject a little bit of Javascript that sets up a
socket.io connection to listen for inotify events from a Linux filesystem.
The end result is that you can have any reasonably modern browser automatically refresh the page when
you save a new version of any file, even a remote browser running on another computer. This saves
you from having to manually reload the page after each change, which allows near-realtime rendering
and updating as you modify HTML and CSS files.
That said, dweb stands for debugging webserver, so don't event think of using
it in a production environment. At the very least, it assumes that HTML files contain at least a body
or head
element.
Requirements
dweb needs a Linux system that allows the inotify
package to be used.
The browser needs to support socket.io, which includes Internet Explorer 5.5+,
Safari 3+, Chrome 4+, Firefox 3+, and mobile Safari and Android browsers (basically
all browsers).
Install
Install globally via npm
. Remember, you need a Linux system that supports the inotify
package.
npm install -g dweb
Or install locally into a node_modules
subdirectory.
npm install dweb
and then run node node_modules/dweb/dweb.js
Usage
Type dweb
in any directory and point your browser to http://localhost:8000
.
No files are harmed in the running of this webserver.