JSPM

browser-sync

0.5.3
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 815164
  • Score
    100M100P100Q176650F

Live CSS Reload & Browser Syncing

Package Exports

  • browser-sync
  • browser-sync/lib/browser-sync
  • browser-sync/package
  • browser-sync/package.json

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (browser-sync) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

browser-sync Build Status NPM version Built with Grunt

Keep multiple browsers & devices in sync when building websites.

Follow @browserSync for news & updates. Check out the website too.

##Features

  1. Scroll - I can keep your pages in sync when scrolling.
  2. Forms - You fill out a form in one browser, I'll copy the data to all the others.
  3. Links - I'll watch your clicks & and make all the other browsers follow you.
  4. CSS injecting - I can even watch your CSS files & inject them when they change.
  5. Live Reload - I can also watch files like HTML and PHP & when they change I can reload all browsers for you.
  6. Built-in Server - Yep, I can serve static files too if you need me to (uses Connect).
  7. Use with any back-end setup - Browser-sync includes a proxy option so that it can be used with any existing PHP, Rails, Python, Node or ASP.net setup.

##When is it useful? It's pretty useful when used with a single browser, watching a CSS file for changes & injecting it. But the real power comes when you're building responsive sites and using multiple devices/monitors because it can keep all browsers in sync & make your workflow much faster.

##Install

npm install -g browser-sync

##How to use it There are currently 2 ways to use browser-sync - with a config file & without a config file. Both options are explained on the following pages.

  1. With a config file
  2. Command line only (no config file)

Using Grunt?

There's a separate plugin for that

Using Gulp?

No problem, here's a setup guide

##Screencasts ( < 3 min each )

  1. Using the Static Server with css injecting
  2. Keeping browsers at the same scroll position
  3. Keeping form fields in sync
  4. When should you use the built-in server?

+ Laravel (php)

  1. Browser Sync + Laravel 4 (php server & proxy)
  2. Browser Sync + Laravel 4 (Mamp Pro & proxy)
  3. Browser Sync + Laravel 4 (Config file & Proxy)
  4. Browser Sync + Laravel 4 (Config file & no proxy)

+ Vagrant

  1. Browser Sync + Vagrant

Want any more? Something specific? ask me nicely @shaneOsbourne

##Support If you've found Browser-sync useful and would like to contribute to its continued development & support, please feel free to send a donation of any size - it would be greatly appreciated!

Support via Gittip Support via PayPal

#Contributing Fork this repo, clone it and then run

npm install

###Testing Tests are split into two categories: Client & Server

Client-side tests Client-side tests are located in test/client-script/*

// Run the client-side tests & exit

grunt test:client

// Run the client-side tests & re-run on every file-change.

grunt karma:watch

Server-side tests Server-side tests are located in test/new-server

// Run the server-side tests & exit

grunt test:server

// Run the server-side tests & re-run on every file-change.

grunt watch

// Run the server-side tests & client-side tests once & exit.

grunt test

This is a brand new project so expect bugs & be sure to report them.

License

Copyright (c) 2013 Shane Osbourne Licensed under the MIT license.