Skip to content
/ js-ws Public

Websocket Transport Library for TypeScript/JavaScript Applications

License

Notifications You must be signed in to change notification settings

MatrixAI/js-ws

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Mar 28, 2025
a9a7956 · Mar 28, 2025
Feb 5, 2025
Sep 21, 2023
Mar 28, 2025
Oct 9, 2023
Sep 9, 2024
Sep 9, 2024
Mar 28, 2025
Mar 28, 2025
Aug 17, 2023
Aug 17, 2023
Sep 9, 2024
Aug 17, 2023
Aug 17, 2023
Aug 17, 2023
Aug 17, 2023
Aug 17, 2023
Sep 9, 2024
Feb 3, 2025
Feb 3, 2025
Sep 9, 2024
Mar 28, 2025
Mar 28, 2025
Aug 17, 2023
Sep 9, 2024

Repository files navigation

js-ws

WebSocket library for TypeScript/JavaScript applications.

This is built on top of the ws library, providing a multiplexed WebStreams API on top of WebSocket.

Installation

npm install --save @matrixai/ws

Browser Usage

To use WebSocketClient in a browser environment, you will need to polyfill:

A good choice for a buffer polyfill is feross/buffer

To polyfill perf_hooks, you can alias the perf_hooks using your bundler of choice with a file containing the following code:

const { performance } = globalThis;
export { performance };

Development

Run nix develop, and once you're inside, you can use:

# install (or reinstall packages from package.json)
npm install
# build the dist
npm run build
# run the repl (this allows you to import from ./src)
npm run tsx
# run the tests
npm run test
# lint the source code
npm run lint
# automatically fix the source
npm run lintfix

Docs Generation

npm run docs

See the docs at: https://matrixai.github.io/js-ws/

Publishing

# npm login
npm version patch # major/minor/patch
npm run build
npm publish --access public
git push
git push --tags

License

js-ws is licensed under Apache-2.0, you may read the terms of the license here.