Socket
Socket
Sign inDemoInstall

@libp2p/websockets

Package Overview
Dependencies
Maintainers
6
Versions
515
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@libp2p/websockets

JavaScript implementation of the WebSockets module that libp2p uses and that implements the interface-transport spec


Version published
Weekly downloads
7.2K
decreased by-57.34%
Maintainers
6
Weekly downloads
 
Created
Source

@libp2p/websockets

libp2p.io Discuss codecov CI

JavaScript implementation of the WebSockets module that libp2p uses and that implements the interface-transport spec

About

A libp2p transport based on WebSockets.

Example

import { createLibp2p } from 'libp2p'
import { webSockets } from '@libp2p/websockets'
import { multiaddr } from '@multiformats/multiaddr'

const node = await createLibp2p({
  transports: [
    webSockets()
  ]
//... other config
})
await node.start()

const ma = multiaddr('/ip4/127.0.0.1/tcp/9090/ws')
await node.dial(ma)

Filters

When run in a browser by default this module will only connect to secure web socket addresses.

To change this you should pass a filter to the factory function.

You can create your own address filters for this transports, or rely in the filters provided.

The available filters are:

  • filters.all
    • Returns all TCP and DNS based addresses, both with ws or wss.
  • filters.dnsWss
    • Returns all DNS based addresses with wss.
  • filters.dnsWsOrWss
    • Returns all DNS based addresses, both with ws or wss.

Example - Allow dialing insecure WebSockets

import { createLibp2p } from 'libp2p'
import { webSockets } from '@libp2p/websockets'
import * as filters from '@libp2p/websockets/filters'

const node = await createLibp2p({
  transports: [
    webSockets({
      // connect to all sockets, even insecure ones
      filter: filters.all
    })
  ]
})

Install

$ npm i @libp2p/websockets

Browser <script> tag

Loading this module through a script tag will make it's exports available as Libp2pWebsockets in the global namespace.

<script src="https://unpkg.com/@libp2p/websockets/dist/index.min.js"></script>

API Docs

License

Licensed under either of

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Keywords

FAQs

Package last updated on 09 Oct 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc