Sign Up for Free

RunKit +

Try any Node.js package right in your browser

This is a playground to test code. It runs a full Node.js environment and already has all of npm’s 400,000 packages pre-installed, including webpack-livereload-plugin with all npm packages installed. Try it out:

var webpackLivereloadPlugin = require("webpack-livereload-plugin")

This service is provided by RunKit and is not affiliated with npm, Inc or the package authors.

webpack-livereload-plugin v2.3.0

Livereload for webpack


Build Status

LiveReload when running webpack --watch


Install the package

# for webpack 4
npm install --save-dev webpack-livereload-plugin

# for webpack 3
npm install --save-dev webpack-livereload-plugin@1

Add the plugin to your webpack config

// webpack.config.js

var LiveReloadPlugin = require('webpack-livereload-plugin');

module.exports = {
  plugins: [
    new LiveReloadPlugin(options)

Add a script tag to your page pointed at the livereload server

<script src="http://localhost:35729/livereload.js"></script>


  • protocol - (Default: protocol of the page, either http or https) Protocol for livereload <script> src attribute value
  • port - (Default: 35729) The desired port for the livereload server. If you define port 0, an available port will be searched for, starting from 35729.
  • hostname - (Default: hostname of the page, like localhost or The desired hostname for the appended <script> (if present) to point to
  • appendScriptTag - (Default: false) Append livereload <script> automatically to <head>.
  • ignore - (Default: null) RegExp of files to ignore. Null value means ignore nothing. It is also possible to define an array and use multiple anymatch patterns.
  • delay - (Default: 0) amount of milliseconds by which to delay the live reload (in case build takes longer)
  • useSourceHash - (Default: false) create hash for each file source and only notify livereload if hash has changed


Yes, there's already webpack-dev-server that handles live reloading and more complex scenarios. This project aims to solve the case where you want assets served by your app server, but still want reloads triggered from webpack's build pipeline.


If you set key, cert, or pfx options, they'll get passed through to tiny-lr as options and it will serve over HTTPS. You'll also also set protocol to https.


Webpack always generates js and css together

If your webpack is always generating js and css files together you could set useSourceHash to true to generate a hash for each changed asset and it should prevent multiple reloads.

Alternatively if this slows your build process you could set liveCSS and liveImg to false to prevent multiple reloads.

RunKit is a free, in-browser JavaScript dev environment for prototyping Node.js code, with every npm package installed. Sign up to share your code.
Sign Up for Free