Meet npm Pro: unlimited public & private packages + package-based permissions.Learn more »

floodsub-stream

0.15.6 • Public • Published

js-libp2p-floodsub

Coverage Status Travis CI Circle CI Dependency Status js-standard-style standard-readme compliant

libp2p-floodsub, also known as pubsub-flood or just dumbsub, this implementation of pubsub focused on delivering an API for Publish/Subscribe, but with no CastTree Forming (it just floods the network).

Lead Maintainer

Vasco Santos.

Table of Contents

Install

> npm install libp2p-floodsub

Examples

const FloodSub = require('libp2p-floodsub')
 
const fsub = new FloodSub(node)
 
fsub.start((err) => {
  if (err) {
    console.log('Upsy', err)
  }
  fsub.on('fruit', (data) => {
    console.log(data)
  })
  fsub.subscribe('fruit')
 
  fsub.publish('fruit', new Buffer('banana'))
})

Events

Floodsub emits two kinds of events:

  1. <topic> when a message is received for a particular topic
  fsub.on('fruit', (data) => { ... })
  • data: a Buffer containing the data that was published to the topic
  1. floodsub:subscription-change when the local peer receives an update to the subscriptions of a remote peer.
  fsub.on('floodsub:subscription-change', (peerInfo, topics, changes) => { ... })
  • peerInfo: a PeerInfo object
  • topics: the topics that the peer is now subscribed to
  • changes: an array of { topicCID: <topic>, subscribe: <boolean> } eg [ { topicCID: 'fruit', subscribe: true }, { topicCID: 'vegetables': false } ]

API

See https://libp2p.github.io/js-libp2p-floodsub

Contribute

PRs are welcome!

Small note: If editing the Readme, please conform to the standard-readme specification.

License

MIT © David Dias

Install

npm i floodsub-stream

DownloadsWeekly Downloads

1

Version

0.15.6

License

MIT

Unpacked Size

440 kB

Total Files

21

Last publish

Collaborators

  • avatar