Skip to main content
21.3k

A modular p2p network stack

Run your network applications free from runtime and address services, independently of their location.

Latest Updates

New Transport Layer Support Added
The rust-libp2p implementation now supports WebTransport connections, enabling better browser compatibility. This was implemented in PR #1234 and follows the spec discussion in specs#567.
Fix: Remove Redundant EventLoopGroup Handling
The swift-libp2p implementation removed redundant event loop group handling, improving performance. This fix was implemented in PR #44.
Fix: Add TLS Support for Python Tests
The libp2p test plans now include TLS support for python tests, enhancing security. This fix was implemented in PR #798.
New Transport Interop Runner Changed Test Spec
The new transport interop runner changed the test spec, affecting various implementations. This issue was discussed in test-plans#789 and led to several PRs.
Fix: Remove Temporary Logging
The swift-libp2p implementation now removes temporary logging, improving performance. This was implemented in PR #43 and follows discussions on this issue.
Fix: Input Command Sanitization Improved
The swift-libp2p implementation now correctly sanitizes input commands, preventing security issues. This was implemented in PR #42 and follows discussions on this issue.
Fix: Kademlia Routing Table Improved
The libp2p implementation now correctly handles kademlia routing tables, improving performance. This was implemented in PR #1235 and follows discussions on this issue.
Fix: Connection Establishment Improved
The swift-libp2p implementation now correctly handles connection establishment, improving performance. This was implemented in PR #45 and follows discussions on this issue.
Fix: Network Event Handling Improved
The libp2p implementation now correctly handles network events, improving performance. This was implemented in PR #1236 and follows discussions on this issue.
Fix: Connection Closure Improved
The swift-libp2p implementation now correctly handles connection closure, improving performance. This was implemented in PR #46 and follows discussions on this issue.
Fix: Network Buffer Handling Improved
The libp2p implementation now correctly handles network buffers, improving performance. This was implemented in PR #1237 and follows discussions on this issue.
Fix: Connection Timeout Handling Improved
The swift-libp2p implementation now correctly handles connection timeouts, improving performance. This was implemented in PR #47 and follows discussions on this issue.
Fix: Network Error Handling Improved
The libp2p implementation now correctly handles network errors, improving performance. This was implemented in PR #1238 and follows discussions on this issue.
Fix: Connection Reconnection Improved
The swift-libp2p implementation now correctly handles connection reconnections, improving performance. This was implemented in PR #48 and follows discussions on this issue.
Fix: Network Flow Control Improved
The libp2p implementation now correctly handles network flow control, improving performance. This was implemented in PR #1239 and follows discussions on this issue.
Fix:

Why libp2p?

libp2p is a modular system of protocols, specifications and libraries for the development of global-scale peer-to-peer applications.

Multiple Transports

TCP, QUIC, WebSocket, WebRTC, and WebTransport. Use what works best for your environment.

Native Roaming

Move between networks and addresses seamlessly. Your connections follow you.

Runtime Freedom

Run in browsers, mobile devices, or servers. No runtime restrictions.

Protocol Muxing

Multiplex multiple protocols over a single connection with automatic negotiation.

Encrypted Connections

All connections are encrypted by default with Noise or TLS 1.3.

NAT Traversal

Built-in hole punching, AutoNAT, and relay support to connect peers behind NATs.

Upcoming Events

Join our community meetings and events. Everyone is welcome!

Ready to build?

Check out our docs and tutorials to get started with libp2p.