{"_id":"@arve.knudsen/libp2p-kad-dht","_rev":"1-8c699b3b0027372ee00003bc83670c4a","name":"@arve.knudsen/libp2p-kad-dht","dist-tags":{"latest":"0.15.3"},"versions":{"0.15.3":{"name":"@arve.knudsen/libp2p-kad-dht","version":"0.15.3","description":"JavaScript implementation of the Kad-DHT for libp2p","leadMaintainer":"Arve Knudsen <arve.knudsen@gmail.com>","main":"src/index.js","scripts":{"lint":"aegir lint","test":"aegir test -t node","test:node":"aegir test -t node","build":"aegir build","docs":"aegir docs","release":"aegir release --docs -t node","release-minor":"aegir release --type minor --docs -t node","release-major":"aegir release --type major --docs -t node","coverage":"aegir coverage","coverage-publish":"aegir-coverage publish","sim":"node test/simulation/index.js"},"pre-push":["lint"],"repository":{"type":"git","url":"git+https://github.com/aknuds1/js-libp2p-kad-dht.git"},"keywords":["IPFS"],"license":"MIT","bugs":{"url":"https://github.com/aknuds1/js-libp2p-kad-dht/issues"},"engines":{"node":">=6.0.0","npm":">=3.0.0"},"homepage":"https://github.com/aknuds1/js-libp2p-kad-dht","dependencies":{"abort-controller":"^3.0.0","async":"^2.6.2","base32.js":"~0.1.0","callbackify":"^1.1.0","chai-checkmark":"^1.0.1","cids":"~0.7.0","debug":"^4.1.1","err-code":"^1.1.2","hashlru":"^2.3.0","heap":"~0.2.6","interface-datastore":"~0.6.0","k-bucket":"^5.0.0","libp2p-crypto":"~0.16.1","libp2p-record":"~0.6.2","merge-options":"^1.0.1","multihashes":"~0.4.14","multihashing-async":"~0.5.2","p-queue":"^5.0.0","p-times":"^2.1.0","@arve.knudsen/peer-id":"~0.13.1","@arve.knudsen/peer-info":"~0.15.2","priorityqueue":"~0.2.1","promise-to-callback":"^1.0.0","promisify-es6":"^1.0.3","protons":"^1.0.1","pull-length-prefixed":"^1.3.2","pull-stream":"^3.6.9","pull-stream-to-async-iterator":"^1.0.1","varint":"^5.0.0","xor-distance":"^2.0.0"},"devDependencies":{"aegir":"^18.2.1","chai":"^4.2.0","datastore-level":"~0.10.0","dirty-chai":"^2.0.1","interface-connection":"~0.3.3","libp2p-mplex":"~0.8.5","libp2p-switch":"~0.42.7","libp2p-tcp":"~0.13.0","lodash":"^4.17.11","lodash.random":"^3.2.0","lodash.range":"^3.2.0","peer-book":"~0.9.1","sinon":"^7.3.1"},"contributors":[{"name":"Alan Shaw","email":"alan.shaw@protocol.ai"},{"name":"Blake Byrnes","email":"blakebyrnes@gmail.com"},{"name":"David Dias","email":"daviddias.p@gmail.com"},{"name":"Friedel Ziegelmayer","email":"dignifiedquire@gmail.com"},{"name":"Hugo Dias","email":"mail@hugodias.me"},{"name":"Jacob Heun","email":"jacobheun@gmail.com"},{"name":"John Hiesey","email":"jhiesey@cs.stanford.edu"},{"name":"Lars Gierth","email":"larsg@systemli.org"},{"name":"Pedro Teixeira","email":"i@pgte.me"},{"name":"Richard Schneider","email":"makaretu@gmail.com"},{"name":"Thomas Eizinger","email":"thomas@eizinger.io"},{"name":"Vasco Santos","email":"vasco.santos@moxy.studio"},{"name":"Vasco Santos","email":"vasco.santos@ua.pt"},{"name":"dirkmc","email":"dirkmdev@gmail.com"},{"name":"dirkmc","email":"dirk@mccormick.cx"},{"name":"kumavis","email":"kumavis@users.noreply.github.com"},{"name":"kumavis","email":"aaron@kumavis.me"},{"name":"ᴠɪᴄᴛᴏʀ ʙᴊᴇʟᴋʜᴏʟᴍ","email":"victorbjelkholm@gmail.com"}],"gitHead":"7b0050c3015aa4657028d29a0797a3fdb1aa6d3e","_id":"@arve.knudsen/libp2p-kad-dht@0.15.3","_nodeVersion":"11.15.0","_npmVersion":"6.7.0","dist":{"integrity":"sha512-MeCYOtM8hF6po5IVH1SjX1Cp0vgTgEvEXs59DTw8U80E6elUAWoWLe+MsZLNbAiympTnLedLJiZoKMTsecpnAw==","shasum":"8bf900e2148d524110ee566a60e23d30219463aa","tarball":"https://registry.npmjs.org/@arve.knudsen/libp2p-kad-dht/-/libp2p-kad-dht-0.15.3.tgz","fileCount":70,"unpackedSize":258712,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdJ0hTCRA9TVsSAnZWagAArBwP/j71T+FWvdbPNJvFFjSa\n/bM3ceqPbs9a+vYRIwvgmqMF3yfaS6AGL2xOS9xscopo6A1zdejfnY2QBorD\nuH7eA3bwBjG3Pppv/C4AOnCjj9UJNtiS+RZbrP3YhhHsfPKR6hnH1lQEVIhh\nfGIbXV5I/b3DzcfrPZZb0Xuh6DvNU6CracIwcC45Lni94lxc7fka/ZwY7lrQ\nR+x2m05DfjIZ95ohWFbr0qP7Y6XYRofFJwqLWzfVQ/OucLLOCwBUOF9k4RVS\nRyDNVcFnGV2thNStynVn88BlIJVaN0UwMOkWB1EABt3OGnAld9kK5TwJRHlD\nrcXFO47J9DNKe7ZCq48tLznjQOul/d4aLv9g+qZYWttGgA6SlqiznE/fq9Ma\nfzpcJWXuV1UeJ34152fjqis/lIDJNICyQJmU9uro5oNofrG8rMJwu18qrHzn\namIIyPS5C7sYBMnPw6EUHnVKEJ84AhCezueMXyqOHHtufFwOOIShoFT4joJ3\n4+VcPBzRrmLghdRq2N8pHJ2VEu2eNrzUGLfrrgiXEshBxGJmLtQ6s4Xzzrxe\njfK1tRqGgxze4ILOZ9Faj1wrnpssSWlhKBxG0NcJbqxTkK3yu90ybnN2FV6v\nbd5kRLTwtc4waj1/sXG7rw1PSN1xYok6DBPS5wkhehtdg7AzTlL+fvfLqS7K\nHi73\r\n=bD+u\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEB33DLCILE0phauW07gMsT2N1kXi0qg77giUanv1ByoAiBwAMEZgmq4vWuTstRgkNVoRLgVNHd7eeq3ZO22aPBlqw=="}]},"maintainers":[{"name":"arve.knudsen","email":"arve.knudsen@gmail.com"}],"_npmUser":{"name":"arve.knudsen","email":"arve.knudsen@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/libp2p-kad-dht_0.15.3_1562855506864_0.538835427604712"},"_hasShrinkwrap":false}},"time":{"created":"2019-07-11T14:31:46.659Z","0.15.3":"2019-07-11T14:31:47.079Z","modified":"2022-04-04T15:41:16.652Z"},"maintainers":[{"name":"arve.knudsen","email":"arve.knudsen@gmail.com"}],"description":"JavaScript implementation of the Kad-DHT for libp2p","homepage":"https://github.com/aknuds1/js-libp2p-kad-dht","keywords":["IPFS"],"repository":{"type":"git","url":"git+https://github.com/aknuds1/js-libp2p-kad-dht.git"},"contributors":[{"name":"Alan Shaw","email":"alan.shaw@protocol.ai"},{"name":"Blake Byrnes","email":"blakebyrnes@gmail.com"},{"name":"David Dias","email":"daviddias.p@gmail.com"},{"name":"Friedel Ziegelmayer","email":"dignifiedquire@gmail.com"},{"name":"Hugo Dias","email":"mail@hugodias.me"},{"name":"Jacob Heun","email":"jacobheun@gmail.com"},{"name":"John Hiesey","email":"jhiesey@cs.stanford.edu"},{"name":"Lars Gierth","email":"larsg@systemli.org"},{"name":"Pedro Teixeira","email":"i@pgte.me"},{"name":"Richard Schneider","email":"makaretu@gmail.com"},{"name":"Thomas Eizinger","email":"thomas@eizinger.io"},{"name":"Vasco Santos","email":"vasco.santos@moxy.studio"},{"name":"Vasco Santos","email":"vasco.santos@ua.pt"},{"name":"dirkmc","email":"dirkmdev@gmail.com"},{"name":"dirkmc","email":"dirk@mccormick.cx"},{"name":"kumavis","email":"kumavis@users.noreply.github.com"},{"name":"kumavis","email":"aaron@kumavis.me"},{"name":"ᴠɪᴄᴛᴏʀ ʙᴊᴇʟᴋʜᴏʟᴍ","email":"victorbjelkholm@gmail.com"}],"bugs":{"url":"https://github.com/aknuds1/js-libp2p-kad-dht/issues"},"license":"MIT","readme":"# js-libp2p-kad-dht\n\n[![](https://img.shields.io/badge/made%20by-Protocol%20Labs-blue.svg?style=flat-square)](http://ipn.io)\n[![](https://img.shields.io/badge/project-IPFS-blue.svg?style=flat-square)](http://ipfs.io/)\n[![](https://img.shields.io/badge/freenode-%23ipfs-blue.svg?style=flat-square)](http://webchat.freenode.net/?channels=%23ipfs)\n[![Discourse posts](https://img.shields.io/discourse/https/discuss.libp2p.io/posts.svg)](https://discuss.libp2p.io)\n[![Build Status](https://travis-ci.org/libp2p/js-libp2p-kad-dht.svg?style=flat-square)](https://travis-ci.org/libp2p/js-libp2p-kad-dht)\n[![Coverage Status](https://coveralls.io/repos/github/libp2p/js-libp2p-kad-dht/badge.svg?branch=master)](https://coveralls.io/github/libp2p/js-libp2p-kad-dht?branch=master)\n[![Dependency Status](https://david-dm.org/libp2p/js-libp2p-kad-dht.svg?style=flat-square)](https://david-dm.org/libp2p/js-libp2p-kad-dht)\n[![Bundle Size](https://flat.badgen.net/bundlephobia/minzip/libp2p-kad-dht)](https://bundlephobia.com/result?p=libp2p-kad-dht)\n[![js-standard-style](https://img.shields.io/badge/code%20style-standard-brightgreen.svg?style=flat-square)](https://github.com/feross/standard)\n[![standard-readme compliant](https://img.shields.io/badge/standard--readme-OK-green.svg?style=flat-square)](https://github.com/RichardLitt/standard-readme)\n![](https://img.shields.io/badge/npm-%3E%3D3.0.0-orange.svg?style=flat-square)\n![](https://img.shields.io/badge/Node.js-%3E%3D6.0.0-orange.svg?style=flat-square)\n\n> JavaScript implementation of the Kademlia DHT for libp2p, based on [go-libp2p-kad-dht](https://github.com/libp2p/go-libp2p-kad-dht).\n\n## Lead Maintainer\n\n[Vasco Santos](https://github.com/vasco-santos).\n\n## Table of Contents\n\n- [Install](#install)\n  - [npm](#npm)\n  - [Use in Node.js](#use-in-nodejs)\n- [API](#api)\n- [Contribute](#contribute)\n- [License](#license)\n\n## Install\n\n### npm\n\n```sh\n> npm i libp2p-kad-dht\n```\n\n### Use in Node.js\n\n```js\nconst KadDHT = require('libp2p-kad-dht')\n```\n\n## API\n\nSee https://libp2p.github.io/js-libp2p-kad-dht for the auto generated docs.\n\nThe libp2p-kad-dht module offers 3 APIs: Peer Routing, Content Routing and Peer Discovery.\n\n### Peer Routing\n\n[![](https://raw.githubusercontent.com/libp2p/interface-peer-routing/master/img/badge.png)](https://github.com/libp2p/interface-peer-routing)\n\n### Content Routing\n\n[![](https://raw.githubusercontent.com/libp2p/interface-content-routing/master/img/badge.png)](https://github.com/libp2p/interface-content-routing)\n\n### Peer Discovery\n\n[![](https://github.com/libp2p/interface-peer-discovery/raw/master/img/badge.png)](https://github.com/libp2p/interface-peer-discovery)\n\n`libp2p-kad-dht` provides a discovery service called `Random Walk` (random walks on the DHT to discover more nodes). It is accessible through `dht.randomWalk` and exposes the [Peer Discovery interface](https://github.com/libp2p/interface-peer-discovery).\n\n### Implementation Summary\n\nA [summary](docs/IMPL_SUMMARY.MD) of the algorithms and API for this implementation of Kademlia.\n\n## Contribute\n\nFeel free to join in. All welcome. Open an [issue](https://github.com/libp2p/js-libp2p-ipfs/issues)!\n\nThis repository falls under the IPFS [Code of Conduct](https://github.com/ipfs/community/blob/master/code-of-conduct.md).\n\n[![](https://cdn.rawgit.com/jbenet/contribute-ipfs-gif/master/img/contribute.gif)](https://github.com/ipfs/community/blob/master/contributing.md)\n\n## License\n\nMIT - Protocol Labs 2017\n","readmeFilename":"README.md"}