STOMP for JavaScript apps (Web browser & node.js)
npm install stompjsThis library provides a STOMP client for Web browser (using Web Sockets) or node.js applications (either using raw TCP sockets or Web Sockets).
The library file is located in lib/stomp.js (a minified version is available in lib/stomp.min.js).
It does not require any dependency (except WebSocket support from the browser or an alternative to WebSocket!)
Online [documentation][doc] describes the library API (including the [annotated source code][annotated]).
Install the 'stompjs' module
$ npm install stompjs
In the node.js app, require the module with:
var Stomp = require('stompjs');
To connect to a STOMP broker over a TCP socket, use the Stomp.overTCP(host, port) method:
var client = Stomp.overTCP('localhost', 61613);
To connect to a STOMP broker over a WebSocket, use instead the Stomp.overWS(url) method:
var client = Stomp.overWS('ws://localhost:61614');
For development (testing, building) the project requires node.js. This allows us to run tests without the browser continuously during development (see cake watch).
$ npm install

To build JavaScript from the CoffeeScript source code:
$ cake build
To run tests:
$ cake test
To continuously run tests on file changes:
$ cake watch
* Make sure you have a running STOMP broker which supports the WebSocket protocol
(see the [documentation][doc])
* Open in your web browser the project's test page
* Check all tests pass
The project contains examples for using stomp.js
to send and receive STOMP messages from a server directly in the Web Browser or in a WebWorker.
[doc]: http://jmesnil.net/stomp-websocket/doc/
[annotated]: http://jmesnil.net/stomp-websocket/doc/stomp.html