JavaScript implementation of the DHT for libp2p
JavaScript Groovy
Clone or download


Build Status Coverage Status Dependency Status js-standard-style standard-readme compliant

JavaScript implementation of the Kademlia DHT for libp2p, based on go-libp2p-kad-dht.

Lead Maintainer

Vasco Santos.

Table of Contents



> npm i libp2p-kad-dht

Use in Node.js

const KadDHT = require('libp2p-kad-dht')


See for the auto generated docs.

The libp2p-kad-dht module offers 3 APIs: Peer Routing, Content Routing and Peer Discovery.

Peer Routing

Content Routing

Peer Discovery

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.


Feel free to join in. All welcome. Open an issue!

This repository falls under the IPFS Code of Conduct.


MIT - Protocol Labs 2017