ColdBox Elixir
v1.x
v1.x
  • Introduction
  • Changelog
  • Migration Guide
  • Installation
  • Running Elixir
  • Configuration Options
  • Working With Stylesheets
  • Working With Scripts
  • Versioning Cache Busting
  • Mixing in tasks from ColdBox Modules
  • ContentBox Integration
  • Copying Files & Directories
  • Deleting Files & Directories
  • BrowserSync
  • Vue.js Integration
  • Writing Elixir Extensions
Powered by GitBook
On this page
  • Specifying a Proxy
  • Default Options
  • Custom Options
Edit on Git

BrowserSync

PreviousDeleting Files & DirectoriesNextVue.js Integration

Last updated 5 years ago

automatically refreshes your web browser after you make changes to your front-end resources. You can use the browserSync method to instruct Elixir to start a BrowserSync server when you run the gulp watch command:

const elixir = require("coldbox-elixir");

module.exports = elixir(mix => {
    mix.browserSync();
});

After running this command you will see directions to add a script tag to the bottom of your website like this:

[BS] Copy the following snippet into your website, just before the closing </body> tag
<script id="__bs_script__">//<![CDATA[
    document.write("<script async src='http://HOST:3000/browser-sync/browser-sync-client.2.12.5.js'></script>".replace("HOST", location.hostname));
//]]></script>

Add that snippet to your layouts/Main.cfm file and reload to enable BrowserSync!

Specifying a Proxy

Instead of copying the script tag into you app, you can tell BrowserSync to proxy your existing CFML server:

const elixir = require("coldbox-elixir");

module.exports = elixir(mix => {
    mix.browserSync({
        proxy: "localhost:50608"
    });
});

Running webpack -w will now open up localhost:3000 which proxies to your app! No need for that BrowserSync script tag anymore!

Default Options

We define a number of default options for BrowserSync:

{
    host: "localhost",
    port: 3000,
    proxy: "http://localhost:8888",
    files: "**/*"
}

The can be overridden by passing in an options object as the only parameter (as seen above with proxy).

Custom Options

In addition to the proxy option, you may pass any BrowserSync option here as the only argument. A list of the BrowserSync options can be found .

BrowserSync
here