A curated list of awesome resources, tools, protocols, and educational content related to Peer-to-Peer (P2P) Networks. P2P networks are decentralized architectures that enable nodes to connect directly, share resources, and collaborate without a central server.
- General Resources
- Popular P2P Protocols
- P2P Networking Libraries and Tools
- Decentralized File Sharing
- Blockchain and P2P Networks
- Development Frameworks
- Educational Resources
- Research Papers
- Community and Forums
- Contribute
- License
- What Are P2P Networks? - An introduction to the concept of peer-to-peer networks and their applications.
- P2P Foundation - An organization focused on promoting peer-to-peer technologies and decentralized systems.
- The Evolution of P2P Networks - A historical overview of P2P networks and their development.
- BitTorrent - A widely used P2P protocol for decentralized file sharing.
- Gnutella - One of the earliest P2P protocols, enabling decentralized file sharing without a central server.
- Libp2p - A modular network stack for building P2P applications, used by projects like IPFS and Ethereum 2.0.
- WebRTC - A P2P protocol for enabling real-time communication directly between browsers.
- Hypercore Protocol - A P2P protocol for sharing and replicating hypermedia data.
- Libp2p - A flexible P2P networking library that supports multiple transports, peer discovery, and stream multiplexing.
- WebTorrent - A streaming torrent client for the browser and Node.js using WebRTC for P2P connections.
- ZeroMQ - A high-performance messaging library often used in P2P applications.
- PeerJS - A simple library for building WebRTC-based P2P applications.
- Socket.IO P2P - A P2P extension for Socket.IO that enables direct peer connections.
- IPFS (InterPlanetary File System) - A decentralized P2P protocol for file storage and sharing.
- BitTorrent - A P2P protocol widely used for decentralized file distribution.
- RetroShare - An open-source P2P communication and file-sharing platform.
- Soulseek - A P2P file-sharing application focused on music sharing.
- LimeWire (Revived) - A new version of the classic P2P file-sharing software, focused on NFTs and digital content.
- Bitcoin - The first cryptocurrency built on a P2P network using the Proof of Work consensus algorithm.
- Ethereum - A decentralized platform for smart contracts running on a P2P network.
- Polkadot - A multi-chain network using a P2P protocol for cross-chain communication.
- Libra (Diem) - A blockchain protocol using a P2P consensus mechanism (project paused).
- Libp2p in Blockchain - An overview of how Ethereum 2.0 uses Libp2p for networking.
- Node.js P2P - A runtime environment for building P2P applications using JavaScript.
- Hypercore - A framework for building P2P applications based on the Hypercore Protocol.
- Gun.js - A real-time, decentralized graph database with P2P capabilities.
- OrbitDB - A decentralized, P2P database built on IPFS.
- Textile - A suite of tools for building P2P and decentralized applications.
- Mastering Bitcoin - A comprehensive resource on Bitcoin, covering its P2P network architecture.
- P2P Networking Guide - An in-depth guide to understanding P2P networking.
- Decentralized Systems 101 - An online course covering the fundamentals of decentralized and P2P systems.
- WebRTC for Beginners - A beginner-friendly guide to building P2P applications with WebRTC.
- The Evolution of Peer-to-Peer Networks - A paper discussing the evolution of P2P networking protocols.
- A Survey of P2P File Sharing Technologies - An overview of various P2P file-sharing technologies.
- Gnutella: A Peer-to-Peer Architecture - The original research on the Gnutella protocol.
- Libp2p: Modular P2P Networking Stack - Specifications and documentation for the Libp2p protocol.
- Reddit: r/P2P - A subreddit dedicated to discussions about P2P networking.
- Discord: P2P Networks - A Discord server for developers working on P2P projects.
- BitcoinTalk Forum - A forum for discussions about Bitcoin and P2P network technologies.
- Libp2p Community - A forum for discussions about the Libp2p networking stack.
- WebRTC Forum - A forum for discussions about WebRTC and P2P communication.
Contributions are welcome!