node package manager
Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »



Browser Usage

Minified and unminified versions in the dist folder.

    <script src="pubsub.min.js"></script> 
        var ps = new PS();

Node.js Usage

    npm install dtang-pubsub

Link to NPM page:

    var Evt = require('pubsub');
    var ps = new Evt.PS();

Public Methods

publish(topic, [data])

  • topic (string) - your custom event name
  • data (mixed) optional argument for any data that you would like to be passed with a publication and used in subscriptions.

subscribe(topic, callback, [context])

  • topic (string) - your custom event name
  • callback (function) - function invoked when topic is published
  • context (object) - optional argument for what this will refer to within the callback function. By default, this will point to the current PS instance
  • returns a subscription ID to potentially be used in unsubscribing


  • subscriptionID (int) - returned from the subscribe method


    var ps = new PS();
    var s1 = ps.subscribe('test-topic', function(data) {
        console.log(this, data);
    // 3rd argument will be the context used for the 2nd argument 
    var s2 = ps.subscribe('test-topic', function(data) {
        console.log(this, data);
    }, {
        name: 'David',
        age: 27
    ps.publish('test-topic', 'some data');
    ps.unsubscribe(s1); // unsubscribes s1