A ring topology for use in libp2p pubsub testing.
To install through npm:
> npm i libp2p-pstn-topo-ring --save
libp2p-pstn-topo-ring
works as a topology for the js-libp2p pubsub testnet. It fits into the libp2p-pstn-topo-*
ecosystem.
const createRing = require('libp2p-pstn-topo-ring')
// Note: nodes must adhere to this interface:
// { peerInfo: <peerInfo>, libp2p: <libp2p> }
const nodes = [nodeA, nodeB, ..., nodeN]
createRing(nodes).then((connectedNodes) => {
// your nodes are now connected in a ring topology
})
The exported function takes an array of nodes, where nodes are structured as follows:
node = {
peerInfo: <peerInfo>,
libp2p: <libp2p>
}
And the function returns a promise containing an array of now-connected nodes:
const create = require('libp2p-pstn-topo-partialmesh')
const nodes = [nodeA, nodeB, ..., nodeN]
create(nodes).then((connected) => /* do something */)
To run the basic tests:
> npm test
PRs are welcome!
MIT © Gavin McDermott