@libp2p/webrtc-star
libp2p WebRTC transport that includes a discovery mechanism provided by the signalling-star
Last updated 3 years ago by achingbrain .
Apache-2.0 OR MIT · Repository · Bugs · Original npm · Tarball · package.json
$ npm install @libp2p/webrtc-star 
SYNC missed versions from official npm registry.

@libp2p/webrtc-star

libp2p.io Discuss codecov CI

libp2p WebRTC transport that includes a discovery mechanism provided by the signalling-star

Table of contents

Install

$ npm i @libp2p/webrtc-star

Browser <script> tag

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

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

Description

libp2p-webrtc-star is one of the WebRTC transports available for libp2p.

Usage

Using this module in Node.js (read: not in the browser)

To use this module in Node.js, you have to BYOI of WebRTC, there are multiple options out there, unfortunately, none of them are 100% solid. The ones we recommend are: wrtc and electron-webrtc.

Instead of just creating the WebRTCStar instance without arguments, you need to pass an options object with the WebRTC implementation:

import { createLibp2pNode } from 'libp2p'
import { webRTCStar } from '@libp2p/webrtc-star'
import wrtc from 'wrtc'
import electronWebRTC from 'electron-webrtc'

// Using wrtc in node
const star = webRTCStar({ wrtc })

// Using electron-webrtc in electron
const star = webRTCStar({ wrtc: electronWebRTC() })

const node = await createLibp2pNode({
  addresses: {
    listen: [
      '/ip4/188.166.203.82/tcp/20000/wss/p2p-webrtc-star'
    ]
  },
  transports: [
    star.transport
  ],
  peerDiscovery: [
    star.discovery
  ]
})
await node.start()

await node.dial('/ip4/188.166.203.82/tcp/20000/wss/p2p-webrtc-star/p2p/QmcgpsyWgH8Y8ajJz1Cu72KnS5uo2Aa2LpzU7kinSooo2a')

Using this module in the Browser

import { createLibp2pNode } from 'libp2p'
import { webRTCStar } from '@libp2p/webrtc-star'

const star = webRTCStar()

const node = await createLibp2pNode({
  addresses: {
    listen: [
      '/ip4/188.166.203.82/tcp/20000/wss/p2p-webrtc-star'
    ]
  },
  transports: [
    star.transport
  ],
  peerDiscovery: [
    star.discovery
  ]
})
await node.start()

await node.dial('/ip4/188.166.203.82/tcp/20000/wss/p2p-webrtc-star/p2p/QmcgpsyWgH8Y8ajJz1Cu72KnS5uo2Aa2LpzU7kinSooo2a')

Signalling server

This module has an accompanying signalling server which is used to discover other peers running the libp2p-webrtc-star transport.

Please see the libp2p-webrtc-star-signalling-server module for more information.

API

Transport

Connection

Peer Discovery - ws.discovery

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.

Current Tags

  • 7.0.0                                ...           latest (2 years ago)

28 Versions

  • 7.0.0                                ...           2 years ago
  • 6.0.0                                ...           2 years ago
  • 5.0.3                                ...           2 years ago
  • 5.0.2                                ...           2 years ago
  • 5.0.1                                ...           2 years ago
  • 5.0.0                                ...           2 years ago
  • 4.0.1                                ...           2 years ago
  • 4.0.0                                ...           2 years ago
  • 3.0.3                                ...           2 years ago
  • 3.0.2                                ...           2 years ago
  • 3.0.1                                ...           2 years ago
  • 3.0.0                                ...           2 years ago
  • 2.0.1                                ...           2 years ago
  • 2.0.0                                ...           2 years ago
  • 1.0.12                                ...           2 years ago
  • 1.0.11                                ...           2 years ago
  • 1.0.10                                ...           3 years ago
  • 1.0.9                                ...           3 years ago
  • 1.0.8                                ...           3 years ago
  • 1.0.7                                ...           3 years ago
  • 1.0.6                                ...           3 years ago
  • 1.0.5                                ...           3 years ago
  • 1.0.4                                ...           3 years ago
  • 1.0.3                                ...           3 years ago
  • 1.0.2                                ...           3 years ago
  • 1.0.1                                ...           3 years ago
  • 1.0.0                                ...           3 years ago
  • 0.25.0                                ...           3 years ago
Downloads
Total 0
Today 0
This Week 0
This Month 0
Last Day 0
Last Week 0
Last Month 0
Dev Dependencies (12)
Dependents (1)

© 2010 - cnpmjs.org x YWFE | Home | YWFE