A list of peer-to-peer resources.
- easyRTC
- wrtc: native module for NodeJS
- rtc: WebRTC suite
- rtc-dcstream: streams2 layer for WebRTC data channels
- rtc-signaller: transport agnostic signalling for WebRTC
- rtc-quickconnect: high-level wrapper for creating WebRTC apps
- rtc-switch: core logic for rtc-switchboard
- rtc-switchboard: server side in-memory signaller
- rtc-signal: core logic for client side signaling
- rtc-mesh: create a P2P mesh data structure using data channels
- rtc-core: core definitions and functions for rtc
- webtorrent: streaming torrent client for node and the browser
- peer-wire-swarm: swarm implementation for bittorrent
- bittorrent-swarm: bittorrent swarm implementation
- bittorrent-dht: BitTorrent DHT implementation
- parse-torrent: parse a torrent identifier
- simple-peer: Simple WebRTC video/voice and data channels
- torrent-discovery: Discover BitTorrent and WebTorrent peers
- bittorrent-tracker: BitTorrent tracker for client and server
- create-torrent: Create torrent files
- parse-torrent-file: Parse a torrent file
- bittorrent-protocol: BitTorrent peer wire protocol
- torrent: download torrents with NodeJS from the CLI
- magnet-uri: parse a magnet URI
- webtorrent-chrome: BitTorrent client as a Chrome App
- peer-wire-protocol: peer wire protocol used in torrents for NodeJS
- socket.io-p2p: signalling server and client library
- node-torrent: torrent reader, write, and hash checker
- torrent-piece: torrent piece abstraction
- torrent-stream: streaming torrent engine used by peerflix
- torrent-mount: Mount a torrent or magnet link as a filesystem
- peerflix: streaming torrent client for NodeJS
- friends-swarm: a WebRTC swarm
- peerbot: message seeding utility for friends
- webrtc-swarm: create a swarm of P2P connections using WebRTC and a signalhub
- signalhub: simple signalling server
- peervision: live P2P streaming protocol
- airswarm: network swarm that discovers other peers on the network using multicast DNS
- webcat: P2P pipe using WebRTC, Github keys for auth, and signalhub for discovery
- torrent-blob-store: read-only BitTorrent backed streaming blob store
- hyperlog: Merkle DAG that replicates based on scuttlebutt logs and causal linking
- ble-swarm: swarm over bluetooth low energy
- multicast-dns: multicast-dns in JS
- screencat: WebRTC screensharing
- torrent-docker: realtime boot of remote docker images using bittorrent
- airpaste: Network pipe that auto-discovers other peers using mdns
- polo: zero configuration service discovery
- read-torrent: read and parse a torrent from a resource
- magnet-link: get a magnet link from a torrent file
- peervisionary: CLI combining airswarm and peervision
- serverless-webrtc: serverless WebRTC
- peer: peerjs server
- scuttlebutt: real-time replication
- secure-scuttlebutt: secure database with replication
- scuttlebucket: nested scuttlebutts
- scuttleboat: dynamic scuttlebucket
- rtc-SCAMP: scalable membership protocol
- rtc-SCAMP-mbr: scalable membership protocol
- network: arbitrary network implementations between clients
- BoundedBroadcastDefinition: broadcasting component on top of communication overlay
- discover: distributed master-less node discovery
- k-bucket: DHT k-bucket implementation
- gossipmonger: real-time replication with scuttlebutt
- kadoh: kademlia over HTTP
- kademlia-dht: DHT
- kademlia: kademlia
- dhtkv: cli for bittorrent storing values in mainline torrent DHT
- abstract-peer-routing: a test suite for implementing peer routing in libp2p
- abstract-record-store: a test suite to implement in IPFS record store
- libp2p-swarm: IPFS swarm implementation
- libp2p-kad-routing: IPFS Kademlia routing
- libp2p-kad-record-store: IPFS Kademlia record store
- libp2p-distributed-record-store: IPFS distributed record store
- libp2p-record: IPFS record object
- libp2p-railing: railing of a Node through a bootstrap peer list
- libp2p-random-walk: peer discovery via a DHT random walk
- libp2p-mdns-discovery: peer discovery via mDNS
- libp2p-utp: node uTP implementation
- libp2p-spdy: multistream into Stream Multiplexing
- libp2p-udt: node UDT implementation
- libp2p-udp: node UDP implementation
- libp2p-tcp: TCP implementation of abstract transport interface
- peer-info: IPFS peer abstraction
- peer-id: IPFS peer id
- peer-book: Peer Store for libp2p and IPFS
- muxrpc: multiplexed rpc
- secret-stack: connect peers using secret handshakes
- ssb-feed: secure scuttlebutt feed
- mdns: discover services on your local network
- append-only-torrent: create a sequence of torrent files for growing input
- fully-connected-topology: create a fully connected topology (mesh)
- blockcast: protocol for storing data in bitcoin blockchains
- hive.js: browser-to-browser distributed cache for video using WebRTC
- ipscend: deploy and host web apps on IPFS
- babel-routing-protocol: routing over p2p mesh
- webdht
- butter: free parts of popcorn time
- merkle-patricia-tree: as documented by Ethereum
- rtc-data-stream: convert a WebRTC data channel into a stream
- peermesh: p2p file transfer using WebRTC
- peertransfer: sends files p2p securely in the browser
- merkle-stream: generate a merkle tree from streamed data
- discovery-channel: search for a key across multiple discovery networks
- anonymous-networks: distributed, p2p chat app using IPFS
- hyperdrive: A file sharing network based on rabin file chunking and append only feeds of data verified by merkle trees.
- webrtc-connect: Establish WebRTC Data Channels between browser-node and node-node with a TCP/HTTP/WebSockets "createServer/attach" like interface
- discovery-network: a p2p discovery network
- rtc-stream: Webrtc using regular node streams
- viraljs: p2p distribution of apps
- wrtc-ice-cand-parse: WRTC Ice Candidate parse
- deejay: Music player that broadcasts to everyone on the same network
- osm-p2p-db: p2p database for open street map data
- dns-discovery: Discovery peers in a distributed system using regular dns and multicast dns.
- k-rpc-socket: Low level implementation of the k-rpc network layer that the BitTorrent DHT uses
- ucat: ucat(uTP cat) implementation in JavaScript to be used with Node.js
- k-rpc: Low-level implementation of the k-rpc protocol used the BitTorrent DHT.
- osm-p2p-server: serve open street map 0.6 api endpoints over a local p2p http server
- secure-webrtc-swarm:
webrtc-swarm
with whitelisting and encryption. - node-ice: Interactive Connectivity Establishment (ICE) (RFC 5245) for Node.js
- node-rtc-peer-connection: RTCPeerConnection for Node.js
- ipfs-merkle-dag: IPFS Merkle DAG JavaScript Implementation
- ipfs-blocks: JavaScript Implementation of Block and BlockService
- electron-webrtc: Use WebRTC in Node.js via a hidden Electron process
- peerweb.js: A client side library for fetching and rendering a static website from a torrent
- webcoin: SPV Bitcoin client for Node.js and the browser
- swarmlog: create a p2p webrtc swarm around a hyperlog
- discovery-swarm: A network swarm that uses discovery-channel to find peers
- ipfs-hyperlog: IPFS Merkle DAG that replicates based on scuttlebutt logs and causal linking.
- karma-peer: Test p2p apps in multiple browsers with karma
- nuTorrent: A Pure Javascript BitTorrent Client
- hyperlog-seed: seed content hashes embedded in a hyperlog
- peer-tweet: Decentralized feeds using BitTorrent's DHT.
- torrent-worker: Streaming torrent client in a web worker for Node.js
- hyperlog-webtorrent-seed: seed webtorrent magnet links from a hyperlog
- swarmbot-webtorrent: webtorrent seeding plugin for swarmbot
- peer-exchange: Decentralized peer discovery and signaling
- kad: extensible implementation of the kademlia distributed hash table for node.js and the browser
- kad-webrtc: WebRTC transport for kad Kademlia implementation
- freeice: Get free, randomized STUN and TURN servers for your WebRTC application
- web-to-dat: Clone a website and share with dat
- webtorrent-cli: WebTorrent, the streaming torrent client. For the command line.
- ipfs-data-importing: JavaScript implementation of the layout and chunking mechanisms used by IPFS
- chatwizard: p2p webrtc chatroom client
- libwebrtc: companion to wrtc
- p2p: browser JS library
- SimpleWebRTC: browser JS library
- signalmaster: signaling server for SimpleWebRTC
- rfc5766-turn-server
- coturn: next evolution of the rfc5766-turn-server project
- peerjs: simple peer-to-peer with WebRTC
- go-peerstream: P2P multi-multiplexing in Go
- ipfs: distributed file system
- ipfs specs: specs for IPFS
- ipget: wget for IPFS
- btfs: bittorrent filesystem based on FUSE (C++)
- swarmbot: mirroring for a p2p mesh of swarmlogs
- whiteboard
- friends: P2P chat
- openbazaar: decentralized marketplace: reputation
- ipfsbin: Run IPFS snippets
- patchwork: p2p secure messaging
- webtorrent-app: WebTorrent, the streaming torrent client. For OS X, Windows, and Linux.
- torrent-log: message feed over bittorrent
- GitTorrent: A decentralization of Github using BitTorrent and Bitcoin
- webrtc-ips: Stun IP address requests for WebRTC
- bittorrent spec: BitTorrent specification
- magnet URI scheme
- WebRTC infrastructure
- Getting Started
- rtc.io
- webtorrent.io: webtorrents for NodeJS and the browser
- chord
- webrtc-ring: resource discovery
- P2P design: Dominic Tarr on P2P design issues
- webgc: gossiping
- topology: different network topologies
- gossip
- membership management
- ipfs
- dynamic search
- p2pweb: Create a web where web pages are published/shared in a P2P fashion
- bitweb: websites sharing using bittorrent
- fill-disk
- brickhouse: security focused desktop applications
- bigchaindb: A scalable blockchain database
CC0.