Skip to main content
21.1k

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.
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 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.
Fix: Update Transport Interop Runner
The transport interop runner was updated to match the new test spec, resolving issues with test execution. This change was implemented in PR #777 and discussed in this issue.

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 guides and tutorials to get started with libp2p.