This library provides a STOMP client for Web browser (using Web Sockets) or node.js applications (either using raw TCP sockets or Web Sockets).
This project is no longer maintained (some context about this decision).
If you encounter bugs with it or need enhancements, you can fork it and modify it as the project is under the Apache License 2.0.
Web Browser support
The library file is located in
lib/stomp.js (a minified version is available in
It does not require any dependency (except WebSocket support from the browser or an alternative to WebSocket!)
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
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
$ npm install
Building and Testing
$ 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)
- 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.