implementation of the kademlia dht for node

dht, kademlia, p2p, javascript, kad, peer-to-peer
npm install kad-js@1.6.9



Build Status | Coverage Status | NPM

Peer-to-peer application framework implementing the Kademlia distributed hash table for Node.js and the browser.

Looking for documentation for Kad v1.6.x? Go here!


Install kad as a dependency of your package using NPM.

npm install kad --save

Choose a transport, storage layer, and your node's contact information.

const kad = require('kad');

const node = kad({
  transport: new kad.HTTPTransport(),
  storage: require('levelup')('path/to/storage.db'),
  contact: { hostname: '', port: 8080 }

const seed = [
  { hostname: '', port: 8080 }

node.join(seed, function() {
  console.log(`Connected to ${node.router.size} peers!`);

For complete documentation, tutorials, and examples on how to extend the base protocol for building your own distributed networks, check out the complete documentation.



Kad - Peer-to-peer application framework implementing Kademlia DHT
Copyright (C) 2017 Gordon Hall

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with this program. If not, see