Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

melishev/wsgo

Repository files navigation

WSGO

WebSocket client for the browser. Simplifying development and debugging

Note

Please lock the version of the package. This library is not stable yet and may have some behavioral differences depending on the version.

What is WSGO?

The WSGO library acts as an abstraction on top of a pure WebSocket connection. Think of it as:

  • Socket.io, only without being tied to your server implementation
  • Axios, just for WebSocket communication

WSGO is designed to standardize communication between client and server through an explicit and common communication format

Getting Started

To install the library in your project:

npm i wsgo

Then import WSGO into your code to create a connection to the server with the default settings:

import WSGO from 'wsgo'

const wsgo = WSGO('wss://echo.websocket.org')

Options

debugging

Allows you to enable debugging mode when working with events. Logs outgoing and incoming events more informative than default browser developer tools

  • type: boolean
  • default: false

immediate

Whether to connect to the server automatically when WSGO is initialized. If set to false, call the open method yourself when you are ready

  • type: boolean
  • default: true

heartbeat

Implements the basic ping-pong mechanism. If there is no response from the server, closes the connection

  • type: boolean
  • default: true

Examples

Create a WebSocket connection:

import WSGO from 'wsgo'

const wsgo = WSGO('wss://echo.websocket.org')

Open the connection manually:

import WSGO from 'wsgo'

const wsgo = WSGO('wss://echo.websocket.org', {
  immediate: false,
})

wsgo.open()

Register an event listener:

import WSGO from 'wsgo'

const wsgo = WSGO('wss://echo.websocket.org')

wsgo.subscribe('my-event', (e) => {
  console.log(e)
})

Send the event to the server:

import WSGO from 'wsgo'

const wsgo = WSGO('wss://echo.websocket.org')

wsgo.send('my-event', { text: 'Hello world!' })

Get the original and unmodified Websocket instance:

import WSGO from 'wsgo'

const wsgo = WSGO('wss://echo.websocket.org')

const status = wsgo.ws.readyState

Close the connection:

import WSGO from 'wsgo'

const wsgo = WSGO('wss://echo.websocket.org')

wsgo.close()

Feedback

WSGO is designed to create a convenient and easy way to interact with WebSocket. We would love to get your ideas on how to make it even better.

About

WebSocket client for the browser. Simplifying development and debugging

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •  
Morty Proxy This is a proxified and sanitized view of the page, visit original site.