{"_id":"hybrid-swarm","_rev":"13-34a3dfe23cb3a473ca4fb3eed6f3bf8c","name":"hybrid-swarm","description":"Finds peers using client-side browser webrtc connections and node.js","dist-tags":{"latest":"1.2.0"},"versions":{"1.0.1":{"name":"hybrid-swarm","version":"1.0.1","description":"Finds peers using client-side browser webrtc connections and node.js","main":"index.js","scripts":{"test":"node test.js"},"keywords":["node","browser","discovery","peers","webrtc"],"author":{"name":"Karissa McKelvey","email":"krmckelv@gmail.com"},"license":"BSD-2-Clause","dependencies":{"discovery-swarm":"^4.0.1","inherits":"^2.0.1","signalhub":"^4.7.4","webrtc-swarm":"^2.6.0"},"gitHead":"82dc2bab5bf10da2de08c8fa5e0c23f53af39bc5","_id":"hybrid-swarm@1.0.1","_shasum":"903a539ded7dd5d4ca73c99fe4597f60ed882e9f","_from":".","_npmVersion":"3.9.3","_nodeVersion":"6.2.1","_npmUser":{"name":"karissa","email":"krmckelv@gmail.com"},"dist":{"shasum":"903a539ded7dd5d4ca73c99fe4597f60ed882e9f","tarball":"https://registry.npmjs.org/hybrid-swarm/-/hybrid-swarm-1.0.1.tgz","integrity":"sha512-UrhRITCvzS34XwQCJWmj1I3Aje3fzrRz8+un0nBjAnzPVKdvr9/c8eOhNCgr3m8iBf1oNoArwCheRd06l0V2Wg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCQkPYsq5ReSuIQTEDhbOCLbjxDW1W14hOuokO4/tVEqwIhAKQU6ohKx1s/OO8cLcc3+ev5Oobb4Q/Th22VLhkpvHz8"}]},"maintainers":[{"name":"karissa","email":"krmckelv@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/hybrid-swarm-1.0.1.tgz_1469728420542_0.10201009083539248"}},"1.0.2":{"name":"hybrid-swarm","version":"1.0.2","description":"Finds peers using client-side browser webrtc connections and node.js","main":"index.js","scripts":{"test":"node test.js"},"keywords":["node","browser","discovery","peers","webrtc"],"author":{"name":"Karissa McKelvey","email":"krmckelv@gmail.com"},"license":"BSD-2-Clause","dependencies":{"discovery-swarm":"^4.0.1","inherits":"^2.0.1","signalhub":"^4.7.4","webrtc-swarm":"^2.6.0"},"gitHead":"a7917d0d231fe361ce041847cac85fbd3895cb17","_id":"hybrid-swarm@1.0.2","_shasum":"f2f872754a3ec3d5657302a05edbcfd45e0b9607","_from":".","_npmVersion":"3.9.3","_nodeVersion":"6.2.1","_npmUser":{"name":"karissa","email":"krmckelv@gmail.com"},"dist":{"shasum":"f2f872754a3ec3d5657302a05edbcfd45e0b9607","tarball":"https://registry.npmjs.org/hybrid-swarm/-/hybrid-swarm-1.0.2.tgz","integrity":"sha512-LoVAa9RMs+DFMuuJmQ1hIEZi8Iw3qY8l+Ohtdv6s6ZLvQK9lgoOHhJFCdHQOb+pf1FJrI71xEoY0E6PHw6DgjA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGQ8RHzJSuMj+ExKw71zzQCXmf0M6M4JU70HKS+/R1UTAiAKRsfIgCoJ7qV23wSkSzprQ4JA5GakW0orrEg47OUQOg=="}]},"maintainers":[{"name":"karissa","email":"krmckelv@gmail.com"}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/hybrid-swarm-1.0.2.tgz_1469729011406_0.5179684122558683"}},"1.0.3":{"name":"hybrid-swarm","version":"1.0.3","description":"Finds peers using client-side browser webrtc connections and node.js","main":"index.js","scripts":{"test":"node test.js"},"keywords":["node","browser","discovery","peers","webrtc"],"author":{"name":"Karissa McKelvey","email":"krmckelv@gmail.com"},"license":"BSD-2-Clause","dependencies":{"discovery-swarm":"^4.0.1","inherits":"^2.0.1","signalhub":"^4.7.4","webrtc-swarm":"^2.6.0"},"gitHead":"a248f18bb5134330a3b6d46b09edb57b69263f79","_id":"hybrid-swarm@1.0.3","_shasum":"d2e25acf44d69f62f53d7d93e820c54c6fd12692","_from":".","_npmVersion":"3.9.3","_nodeVersion":"6.2.1","_npmUser":{"name":"karissa","email":"krmckelv@gmail.com"},"dist":{"shasum":"d2e25acf44d69f62f53d7d93e820c54c6fd12692","tarball":"https://registry.npmjs.org/hybrid-swarm/-/hybrid-swarm-1.0.3.tgz","integrity":"sha512-SkfG6aTipP1ibTecabrep8a7bomgrlGVXdzbD1y96j2th4n2git9GgUkMEB6QpeTNoWASMR2Za4Z7Ukrp22DZA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAEXPnEsTVFhTHGG9MniXfRP1LsHyKy/7dpV/cckP57dAiEA7lhyS4vS2DXTLr+GjPQpqDtZ1yXg/Uwg+ISuM+3/pW8="}]},"maintainers":[{"name":"karissa","email":"krmckelv@gmail.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/hybrid-swarm-1.0.3.tgz_1471357164652_0.8848840654827654"}},"1.0.4":{"name":"hybrid-swarm","version":"1.0.4","description":"Finds peers using client-side browser webrtc connections and node.js","main":"index.js","scripts":{"test":"node test.js"},"keywords":["node","browser","discovery","peers","webrtc"],"author":{"name":"Karissa McKelvey","email":"krmckelv@gmail.com"},"license":"BSD-2-Clause","dependencies":{"discovery-swarm":"^4.0.1","inherits":"^2.0.1","signalhub":"^4.7.4","webrtc-swarm":"^2.6.0"},"gitHead":"c79d725682fc7fc629a5e0b9384ef7f78f023594","_id":"hybrid-swarm@1.0.4","_shasum":"b57d07c8ed06767c46df53ec199020791a5db0fc","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.4.0","_npmUser":{"name":"karissa","email":"krmckelv@gmail.com"},"dist":{"shasum":"b57d07c8ed06767c46df53ec199020791a5db0fc","tarball":"https://registry.npmjs.org/hybrid-swarm/-/hybrid-swarm-1.0.4.tgz","integrity":"sha512-lX1fRBk2lo2HZlc16iJ06ft1ILeX8z+luTJBW11JmeItqddttrHgnLVCg4lJzzjaezyXbL+zu94ohxCMD9pxxQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC6FDvA9MSuYXj7ARgXo9X3dLEb+6ZPtDkYAlSi1t9M9QIhANAbQO78Rd+1XLe56ljROa6B9zeEn7FyfZlchSAOh0dg"}]},"maintainers":[{"name":"clkao","email":"clkao@clkao.org"},{"name":"juliangruber","email":"julian@juliangruber.com"},{"name":"karissa","email":"krmckelv@gmail.com"},{"name":"laurengarcia","email":"lauren.garcia@gmail.com"},{"name":"mafintosh","email":"mathiasbuus@gmail.com"},{"name":"maxogden","email":"max@maxogden.com"}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/hybrid-swarm-1.0.4.tgz_1472730550600_0.7153745079413056"}},"1.1.0":{"name":"hybrid-swarm","version":"1.1.0","description":"Finds peers using client-side browser webrtc connections and node.js","main":"index.js","scripts":{"test":"node test.js"},"keywords":["node","browser","discovery","peers","webrtc"],"author":{"name":"Karissa McKelvey","email":"krmckelv@gmail.com"},"license":"BSD-2-Clause","dependencies":{"discovery-swarm":"^4.0.1","inherits":"^2.0.1","signalhub":"^4.7.4","webrtc-swarm":"^2.6.0"},"gitHead":"089bd61e4dc233105f3ee8a31650b64568a5644d","_id":"hybrid-swarm@1.1.0","_shasum":"579312f4d9f378d4e32d260714d62621ba6d0c7c","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.4.0","_npmUser":{"name":"karissa","email":"krmckelv@gmail.com"},"dist":{"shasum":"579312f4d9f378d4e32d260714d62621ba6d0c7c","tarball":"https://registry.npmjs.org/hybrid-swarm/-/hybrid-swarm-1.1.0.tgz","integrity":"sha512-Fwdx/EbJ0jg4bgRGVVmm+TIhjD0JRtPAeV6VxNnDlVdJpmA4pCcuxg6fV53ddhLc47cHum+6ObHyzP3G0GBzTg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIExY1nq6cwDv9vriXC6YBhXISIpEofgwzz8CHzEgfK4IAiEAsIBxHGe5s7B5ZqHaRpC3cX63ZYSgC+KahNe3tUpXULk="}]},"maintainers":[{"name":"clkao","email":"clkao@clkao.org"},{"name":"juliangruber","email":"julian@juliangruber.com"},{"name":"karissa","email":"krmckelv@gmail.com"},{"name":"laurengarcia","email":"lauren.garcia@gmail.com"},{"name":"mafintosh","email":"mathiasbuus@gmail.com"},{"name":"maxogden","email":"max@maxogden.com"}],"_npmOperationalInternal":{"host":"packages-16-east.internal.npmjs.com","tmp":"tmp/hybrid-swarm-1.1.0.tgz_1473423264575_0.6596964350901544"}},"1.2.0":{"name":"hybrid-swarm","version":"1.2.0","description":"Finds peers using client-side browser webrtc connections and node.js","main":"index.js","scripts":{"test":"node test.js"},"keywords":["node","browser","discovery","peers","webrtc"],"author":{"name":"Karissa McKelvey","email":"krmckelv@gmail.com"},"license":"BSD-2-Clause","dependencies":{"discovery-swarm":"^4.0.1","inherits":"^2.0.1","signalhub":"^4.7.4","webrtc-swarm":"^2.6.0"},"gitHead":"dc7f3f41d2c539c95699ca85e8f13bd2a19729de","_id":"hybrid-swarm@1.2.0","_shasum":"5bb2db726371ffd1a20ec34c43bb09887ba49125","_from":".","_npmVersion":"3.10.3","_nodeVersion":"6.4.0","_npmUser":{"name":"karissa","email":"krmckelv@gmail.com"},"dist":{"shasum":"5bb2db726371ffd1a20ec34c43bb09887ba49125","tarball":"https://registry.npmjs.org/hybrid-swarm/-/hybrid-swarm-1.2.0.tgz","integrity":"sha512-ndmKwzFShK9y61zhGWDrLpDeBbNIJMr6Mm6l1jiZGy4WrnM1Wlvl8Q1R51daY+IGFL+2PQ0kYd/SSKAaA/KZ8A==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA+8A+DdnWpeWdJPMISOwwCoqVAO+4GU1QWBPJcPpiRmAiBTy02oAEHtgMNVjQTFb8HI9/nBiYeU7bH/UNB53rjUzg=="}]},"maintainers":[{"name":"clkao","email":"clkao@clkao.org"},{"name":"juliangruber","email":"julian@juliangruber.com"},{"name":"karissa","email":"krmckelv@gmail.com"},{"name":"laurengarcia","email":"lauren.garcia@gmail.com"},{"name":"mafintosh","email":"mathiasbuus@gmail.com"},{"name":"maxogden","email":"max@maxogden.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/hybrid-swarm-1.2.0.tgz_1473690289228_0.22067707846872509"}}},"readme":"# hybrid-swarm\n\nFinds peers using client-side browser webrtc connections and node.js.\n\n## Usage\n\n```js\nvar hybrid = require('hybrid-swarm')\n\n\n// see npmjs.org/webrtc-swarm\nvar signalhub = 'https://signalhub.mafintosh.com'\n\n// see npmjs.org/discovery-swarm\nvar discovery = { ... }\n\nvar swarm = hybrid({\n  signalhub: signalhub,\n  discovery: discovery\n})\n\nswarm.on('connection', function (conn) {\n  if (conn.type === 'webrtc-swarm') {\n    console.log('connected to webrtc-swarm')\n  }\n  if (conn.type === 'discovery-swarm') {\n    console.log('connected to discovery swarm')\n  }\n  console.log(swarm.hybrid.connections, 'total connections')\n})\n```\n\n## API\n\n##### `HybridSwarm(opts)`\n\nTakes options for `signalhub` and `discovery`. See example for more information.\n\n##### `HybridSwarm.connections`\n\nThe number of total connections.\n\n##### `HybridSwarm._connection(conn, opts)`\n\nCalled when the swarm has found a new connection (or peer). \n\nArguments:\n\n  * `conn`: connection object\n  * `opts`: contains metadata, such as the module/connection type: 'webrtc-swarm' or 'discovery-swarm'\n\n\n##### `HybridSwarm._listening()`\n\nCalled when the node swarm is listening.\n\n## Example\n\nUsed in\n\n* [hyperdrive-archive-swarm](https://github.com/karissa/hyperdrive-archive-swarm)\n","maintainers":[{"name":"clkao","email":"clkao@clkao.org"},{"name":"juliangruber","email":"julian@juliangruber.com"},{"name":"karissa","email":"krmckelv@gmail.com"},{"name":"laurengarcia","email":"lauren.garcia@gmail.com"},{"name":"mafintosh","email":"mathiasbuus@gmail.com"},{"name":"maxogden","email":"max@maxogden.com"}],"time":{"modified":"2022-06-18T23:19:54.370Z","created":"2016-07-28T17:53:42.590Z","1.0.1":"2016-07-28T17:53:42.590Z","1.0.2":"2016-07-28T18:03:34.111Z","1.0.3":"2016-08-16T14:19:26.256Z","1.0.4":"2016-09-01T11:49:12.467Z","1.1.0":"2016-09-09T12:14:26.074Z","1.2.0":"2016-09-12T14:24:51.274Z"},"keywords":["node","browser","discovery","peers","webrtc"],"author":{"name":"Karissa McKelvey","email":"krmckelv@gmail.com"},"license":"BSD-2-Clause","readmeFilename":"README.md"}