Awesome Open Source
Awesome Open Source


Simple signalling server that can be used to coordinate handshaking with webrtc or other fun stuff.

npm install signalhub

Or to install the command line tool

npm install -g signalhub

build status


var signalhub = require('signalhub')
var hub = signalhub('my-app-name', [

  .on('data', function (message) {
    console.log('new message received', message)

hub.broadcast('my-channel', {hello: 'world'})


hub = signalhub(appName, urls)

Create a new hub client. If you have more than one hub running specify them in an array

// use more than one server for redundancy
var hub = signalhub('my-app-name', [

The appName is used to namespace the subscriptions/broadcast so you can reuse the signalhub for more than one app.

stream = hub.subscribe(channel)

Subscribe to a channel on the hub. Returns a readable stream of messages

hub.broadcast(channel, message, [callback])

Broadcast a new message to a channel on the hub


Close all subscriptions


You can use the command line api to run a hub server

signalhub listen -p 8080 # starts a signalhub server on 8080

To listen on https, use the --key and --cert flags to specify the path to the private key and certificate files, respectively. These will be passed through to the node https package.

To avoid logging to console on every subscribe/broadcast event use the --quiet or -q flag.

Or broadcast/subscribe to channels

signalhub broadcast my-app my-channel '{"hello":"world"}' -p 8080 -h
signalhub subscribe my-app my-channel -p 8080 -h


This also works in the browser using browserify :)

Publicly available signalhubs

Through the magic of free hosting, here are some free open signalhub servers! For serious applications though, consider deploying your own instances.

Deploying with popular services

No additional configuration is needed.

now mafintosh/signalhub





Related Awesome Lists
Top Programming Languages
Top Projects

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
Javascript (1,060,209
Hub (6,654
Webrtc (4,321
Browserify (3,430