npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

react-native-stompjs

v0.0.7

Published

STOMP for React native apps

Downloads

14

Readme

react-native-stompjs

This library provides a convenient way to connect to STOMP messaging servers from your React Native app. It leverages the react-native-tcp-socket library to bridge the gap between React Native's environment and the node.js-like net module that STOMP.js relies on.

Installation:

npm install react-native-stompjs

or

yarn add react-native-stompjs

Usage:

1. Import necessary modules:

import * as Stomp from 'react-native-stompjs';
import SockJS from 'sockjs-client';

2. Connect to the STOMP server:

const turnOnSocket = async () => {
  try {
    const token = await loadToken(); // Replace with your token loading logic
    const socket = new SockJS('https://your-stomp-server-url/ws-location');
    stompClient.current = Stomp.over(socket);
    stompClient.current.connect({ token }, onConnected, onError); // Handle connection events
  } catch (error) {
    console.error('Error connecting to STOMP server:', error);
  }
};
const onConnected = () => {
  console.log('Connected to STOMP server!');
};

const onError = (error) => {
  console.error('Error connecting to STOMP server:', error);
};

Case for use in react native app :

error: Error: Unable to resolve module net from C:\Users\user\projects\example\node_modules\stompjs\lib\stomp-node.js: net could not be found within the project or in these directories:
node_modules
12 | Stomp = require('./stomp');
13 |
14 | net = require('net');

Here is readme from STOMP.js

This library provides a STOMP client for Web browser (using Web Sockets) or node.js applications (either using raw TCP sockets or Web Sockets).

Web Browser support

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 describes the library API (including the annotated source code).

node.js support

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');

Development Requirements

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

Building and Testing

Build Status

To build JavaScript from the CoffeeScript source code:

$ cake build

To run tests:

$ cake test

To continuously run tests on file changes:

$ cake watch

Browser Tests

  • 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

Use

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.

Authors