Learn about our RFC process, Open RFC meetings & more.Join in the discussion! »


1.1.0 • Public • Published


Build Status License

A lightweight gulp plugin for livereload to be used with a livereload middleware of your choice:

This repo is based on a fork of Cyrus David's gulp-livereload. Since he hasn't been active since a long time, it seemed like a good idea to fork it. I'm also using it in a lot of my upcoming projects and I didn't want it to just die. Please keep in mind that v1.0.0 of this plugin is equal to v3.8.1 (the latest version) of the original plugin. So no extra effort. Just replace gulp-livereload with the latest version of gulp-refresh in your dependencies.


npm install --save-dev gulp-refresh


const gulp = require('gulp'),
      sass = require('gulp-sass'),
      refresh = require('gulp-refresh')
gulp.task('scss', () => {
    .pipe(sass().on('error', sass.logError)))
gulp.task('watch', () => {
  gulp.watch('src/*.scss', ['scss'])

Take a look at other examples here.


Can either be set through livereload.listen(options) or livereload(options).

Property name Description Default value
port The server's port
host The server's host
basePath Path to prepend all given paths
start If the server should be started automatically
quiet Disable console logging false
reloadPage Path to the browser's current page for a full page reload index.html



Creates a stream which notifies the livereload server on what changed.


Starts a livereload server. It takes an optional options parameter that is the same as the one noted above. Also you dont need to worry with multiple instances as this function will end immediately if the server is already runing.


Alternatively, you can call this function to send changes to the livereload server. You should provide either a simple string or an object, if an object is given it expects the object to have a path property.

NOTE: Calling this function without providing a path will do nothing.


You can also tell the browser to refresh the entire page. This assumes the page is called index.html, you can change it by providing an optional file path or change it globally with the options reloadPage.


You can also directly access the middleware of the underlying server instance (mini-lr.middleware) for hookup through express, connect, or some other middleware app


gulp-livereload also reveals the underlying server instance for direct access if needed. The instance is a "mini-lr" instance that this wraps around. If the server is not running then this will be undefined.


Set the DEBUG environment variables to * to see what's going on.

$ DEBUG=* gulp <task>


npm i gulp-refresh

DownloadsWeekly Downloads






Last publish


  • avatar