node package manager
It’s your turn. Help us improve JavaScript. Take the 2017 JavaScript Ecosystem Survey »


Randy based realtime notifications with Rodeo.

Build Status


npm install node-randy

Server Setup

Randy setup is rather simple. To get a notifications server up and running simply:

var randy   = require('node-randy');
randy.listen(80, function (err) {
    // Let's do this! 

Optionally, you can pass in Redis connection settings (see Matt Ranney's Redis module for details):

var randy   = require('node-randy');
randy.listen(80, {
    port:       3333,
    host:       '',
    pass:       'wildturkey',
    options:    null
}, function (err) {
    // Jump the general lee off a cliff 

Client Setup

The client side is vanilla and only requires handling of three actions: register, notice, and dismiss (and read optionally). For example:

var socket  = io.connect('//localhost');
var user    = 'test::user1234';
// Emit the "register" event with a unique user id and type (optional). 
socket.emit('register', user);
// If a notice is received, display it! 
socket.on('notice', function (notice) {
    // You can flag a persistent notice as "read", by emitting the "read" action 
    socket.emit('read', {
        uid:    user
    // In order to remove a persistent notice, you need to emit the "dismiss" action 
    socket.emit('dismiss', {
        uid:    user


  • listen Actions (Incoming)

  • notice Actions (Outgoing)

  • register
  • read
  • dismiss

To Test

npm test