awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectAboutHow we rankPressMCP server
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
Back to libp2p/go-libp2p

Open-source alternatives to Go Libp2p

30 open-source projects similar to libp2p/go-libp2p, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Go Libp2p alternative.

  • libp2p/rust-libp2plibp2p avatar

    libp2p/rust-libp2p

    5,556View on GitHub↗

    rust-libp2p is a modular peer-to-peer networking library written in Rust, implementing the libp2p specification. It provides a composable stack of transport, security, and discovery protocols that can be mixed and matched to build decentralized applications, with a central swarm manager coordinating all active connections, protocol negotiation, and peer lifecycle. The library distinguishes itself through a pluggable transport abstraction that supports TCP, QUIC, WebSocket, WebRTC, and WebTransport, enabling cross-platform operation across browsers, mobile devices, and servers. It secures ever

    Rustdecentralizationlibp2pnetworking
    View on GitHub↗5,556
  • libp2p/libp2plibp2p avatar

    libp2p/libp2p

    2,940View on GitHub↗

    libp2p is a modular peer-to-peer networking stack designed for building decentralized applications. It provides the core infrastructure necessary for nodes to discover and connect with other participants across a network without relying on central servers. The project distinguishes itself through a flexible transport layer that abstracts multiple protocols, including TCP, QUIC, WebSockets, and WebTransport, into a single interface. It features specialized tools for NAT and firewall traversal, such as hole punching and relay nodes, to establish direct connections between peers and web browsers

    View on GitHub↗2,940
  • perlin-network/noiseperlin-network avatar

    perlin-network/noise

    1,826View on GitHub↗

    Noise is a peer-to-peer networking stack written in Go designed for building decentralized systems. It provides a framework for managing node lifecycles, establishing encrypted communication channels, and facilitating direct data exchange between distributed nodes without reliance on central authorities. The library distinguishes itself through a modular architecture that allows developers to stack custom communication layers, enabling the creation of specialized network protocols. It incorporates a decentralized key-value lookup system for peer discovery and routing, alongside cryptographic

    Gocryptographygolangnetwork
    View on GitHub↗1,826

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Find more with AI search
  • easytier/easytierEasyTier avatar

    EasyTier/EasyTier

    12,012View on GitHub↗

    EasyTier is a decentralized peer-to-peer virtual private network and mesh networking tool. It functions as a layer 3 network overlay that establishes secure tunnels between devices without requiring a centralized server or coordinator. It also serves as a WireGuard-compatible VPN, capable of acting as a server for standard WireGuard clients. The project distinguishes itself through multipath latency-based routing and the use of KCP or QUIC proxies to mitigate packet loss and stabilize connections in high-loss environments. It provides a virtual networking manager featuring a web management co

    Rustnat-traversalp2prust
    View on GitHub↗12,012
  • webtorrent/webtorrentwebtorrent avatar

    webtorrent/webtorrent

    31,045View on GitHub↗

    WebTorrent is a JavaScript client library and peer-to-peer file sharing tool that implements the BitTorrent protocol. It enables the seeding and downloading of files via magnet links and info hashes across both the browser and Node.js environments. The project distinguishes itself by using WebRTC data channels to establish direct browser-to-browser networking, allowing decentralized data transfer across different domains without a central server. It specifically focuses on streaming torrent media, enabling incremental video and audio playback by prioritizing sequential pieces of a file before

    JavaScriptbittorrentbrowserhacktoberfest
    View on GitHub↗31,045
  • anacrolix/torrentanacrolix avatar

    anacrolix/torrent

    6,041View on GitHub↗

    This project is a full-featured BitTorrent client library and protocol implementation. It provides the core components necessary for peer-to-peer file sharing, including a networking stack that supports the BitTorrent specification, tracker communication, and swarm management. A primary differentiator is the inclusion of a virtual filesystem that allows torrents to be mounted as read-only drives. This system enables on-demand content streaming, where specific data pieces are fetched from the network only when a read request occurs, rather than requiring the entire archive to be downloaded fir

    Gobittorrentgomagnet-link
    View on GitHub↗6,041
  • davyxu/cellnetdavyxu avatar

    davyxu/cellnet

    4,061View on GitHub↗

    Cellnet is a Go networking framework designed for building distributed systems and peer-to-peer networks. It provides a multi-protocol transport layer that standardizes message exchange across TCP, UDP, and WebSockets, utilizing a binary message codec system to map message types to unique identifiers for network transmission. The framework is distinguished by its remote procedure call library, which enables the execution of functions on remote peers using synchronous or asynchronous request patterns. It further differentiates itself with an asynchronous event dispatcher that processes network

    Go
    View on GitHub↗4,061
  • syncthing/syncthing-androidsyncthing avatar

    syncthing/syncthing-android

    4,252View on GitHub↗

    Syncthing Android is a mobile application and service wrapper that enables decentralized, peer-to-peer file synchronization on the Android platform. It functions as a distributed data sync tool that mirrors folders across multiple devices without the need for a central cloud server. The project provides a mobile interface to manage a synchronization instance, utilizing a service-wrapper architecture to handle the lifecycle and configuration of the underlying synchronization binary. It ensures secure data exchange through TLS encryption, certificate-based identity verification, and password-pr

    Javaandroidjavap2p
    View on GitHub↗4,252
  • rustdesk/rustdesk-serverrustdesk avatar

    rustdesk/rustdesk-server

    9,943View on GitHub↗

    rustdesk-server is a self-hosted remote desktop server infrastructure designed to manage ID signaling and relay traffic for remote connections between peers. It provides the necessary backend environment to coordinate remote access sessions through rendezvous-based signaling and relay-based traffic forwarding. The system distinguishes itself with a remote access management console for organizing devices and enforcing security policies, as well as an identity integrator for OIDC-based federation and LDAP directory synchronization. It utilizes geolocation-aware routing to distribute traffic acr

    Rustremote-accessremote-controlremote-desktop
    View on GitHub↗9,943
  • valvesoftware/gamenetworkingsocketsValveSoftware avatar

    ValveSoftware/GameNetworkingSockets

    9,705View on GitHub↗

    GameNetworkingSockets is a UDP networking library providing secure transport, peer discovery, and traffic control systems. It implements a networking layer for reliable and unreliable messaging over UDP, including tools for message fragmentation and reassembly. The project features a peer-to-peer NAT traversal tool for establishing direct host-to-host connections by punching through firewalls and network address translation layers. It secures network traffic through encrypted transport and secure key exchange. The library includes a traffic manager to organize data into prioritized lanes to

    C++game-developmentnetworkingpeer-to-peer
    View on GitHub↗9,705
  • webrtc/apprtcwebrtc avatar

    webrtc/apprtc

    4,228View on GitHub↗

    apprtc is a WebRTC video chat application and signaling server designed to establish peer-to-peer audio and video communication between browsers. It provides a coordination layer using a websocket-based signaling server to exchange session descriptions and network candidates. The project is delivered as a dockerized communication app, allowing for a containerized deployment of the calling service for local development or cloud hosting. It includes a network gateway that integrates STUN and TURN servers to facilitate media flow through firewalls and NATs. The implementation covers peer discov

    JavaScript
    View on GitHub↗4,228
  • pirate/wireguard-docspirate avatar

    pirate/wireguard-docs

    4,990View on GitHub↗

    This project is a comprehensive technical documentation site and reference manual for configuring and deploying WireGuard VPN tunnels and interfaces. It serves as a guide for establishing encrypted network connections between peers using public key authentication to secure data traffic across untrusted networks. The documentation provides specific technical manuals for implementing NAT traversal solutions, including UDP hole punching and the use of bounce servers to connect peers behind restrictive firewalls. It also includes detailed guides on tunnel implementation and protocol references fo

    Shellinternetkernel-modulelinux
    View on GitHub↗4,990
  • pion/webrtcpion avatar

    pion/webrtc

    16,571View on GitHub↗

    This project is a cross-platform implementation of the WebRTC standard, providing a comprehensive library for building real-time audio, video, and data communication applications. It functions as a peer-to-peer networking framework and media processing engine, enabling direct, low-latency connections between devices without relying on central servers. By strictly adhering to official protocol specifications, the library ensures interoperability with browsers and other native communication software across mobile, desktop, and server environments. The engine distinguishes itself through a modul

    Goaudiogogolang
    View on GitHub↗16,571
  • ricochet-im/ricochetricochet-im avatar

    ricochet-im/ricochet

    3,914View on GitHub↗

    Ricochet is a decentralized, peer-to-peer anonymous chat client and messaging protocol. It enables the exchange of encrypted text messages and files without relying on central servers, using Tor hidden services to mask the network addresses and identities of all participants. The project eliminates communication metadata by removing central coordinating authorities, preventing the discovery of contact lists or timing patterns. It utilizes a peer-to-peer connection model where every client acts as both a server and a client, employing public key signatures and cryptographically signed invitati

    C++c-plus-pluscross-platformgui
    View on GitHub↗3,914
  • hashicorp/memberlisthashicorp avatar

    hashicorp/memberlist

    4,068View on GitHub↗

    Memberlist is a Go library used for maintaining distributed cluster membership and failure detection via a peer-to-peer gossip protocol. It functions as a cluster state synchronizer, allowing nodes to track active members and propagate metadata without a central coordinator. The library implements a secure gossip mechanism using AES-GCM encryption to protect inter-node communication and membership data. It distinguishes its failure detection through a suspicion-based model and adaptive timeout scaling, which reduces false positives caused by transient network latency. The project provides ca

    Go
    View on GitHub↗4,068
  • webtorrent/webtorrent-desktopwebtorrent avatar

    webtorrent/webtorrent-desktop

    10,072View on GitHub↗

    ❤️ Streaming torrent app for Mac, Windows, and Linux

    JavaScriptbittorrentelectronhacktoberfest
    View on GitHub↗10,072
  • lemunozm/message-iolemunozm avatar

    lemunozm/message-io

    1,195View on GitHub↗

    Message-io is an event-driven networking library written in Rust that provides a unified message-based API for building applications across multiple transport protocols. It allows developers to handle communication over TCP streams, UDP datagrams, and WebSocket connections through a single interface, while managing underlying network connections, message transport, and low-level socket asynchrony. The library utilizes a single-threaded event loop architecture to process incoming connections, disconnections, network messages, and internal signals on a dedicated thread, eliminating traditional

    Rustactor-modelactor-systemasynchronous
    View on GitHub↗1,195
  • n0-computer/irohn0-computer avatar

    n0-computer/iroh

    7,858View on GitHub↗

    Iroh is a peer-to-peer networking stack and distributed system designed for secure direct connections, content-addressed storage, and synchronized data sharing. It provides a foundation for decentralized applications by combining a QUIC-based networking layer with primitives for distributed state and data transfer. The project distinguishes itself through a comprehensive suite of decentralized capabilities, including a distributed data store using conflict-free replicated data types for collaborative synchronization and a content-addressed storage system for verifiable, resumable transfers of

    Rustdoes-anyone-read-thesememesp2p
    View on GitHub↗7,858
  • nostr-protocol/nostrnostr-protocol avatar

    nostr-protocol/nostr

    11,414View on GitHub↗

    Nostr is a decentralized social protocol and censorship-resistant messaging standard. It operates as a distributed event relay network where user identities are defined by public-key cryptography rather than centralized account databases. The protocol enables the exchange of cryptographically signed messages across a network of independent relays. This system allows for the broadcasting of signed notes to multiple servers to ensure content availability and permanence, while using public-key pairs to prove authorship and authenticity without a central registry. The system covers distributed c

    View on GitHub↗11,414
  • netbirdio/netbirdnetbirdio avatar

    netbirdio/netbird

    26,188View on GitHub↗

    NetBird is a zero-trust networking platform that builds secure, encrypted peer-to-peer overlay networks using the WireGuard protocol. It functions as a software-defined perimeter, connecting distributed infrastructure across cloud environments and physical locations while hiding network resources from the public internet. By integrating with external identity providers, the platform enforces granular access control and identity-based segmentation for every user and device. The platform distinguishes itself through extensive automation and programmatic management capabilities. It provides a ce

    Gogolangmeshmesh-networks
    View on GitHub↗26,188
  • linsa-io/linsa.iolinsa-io avatar

    linsa-io/linsa.io

    16,880View on GitHub↗

    Linsa.io is an end-to-end encrypted cloud storage service and zero-knowledge data vault. It functions as a private content sharing platform that encrypts files and data on the client side, ensuring only the owner can access the stored content. The project employs a local-first approach, processing data updates and encryption on the local device before syncing encrypted blobs to a remote persistence layer. It uses a zero-knowledge architecture where the service provider cannot access decryption keys or view the plaintext content of stored files. The platform provides capabilities for private

    TypeScript
    View on GitHub↗16,880
  • aninsomniacy/motrix-nextAnInsomniacy avatar

    AnInsomniacy/motrix-next

    8,099View on GitHub↗

    Motrix Next is a cross-platform desktop download manager that unifies HTTP, FTP, BitTorrent, ED2K, and Magnet links under a single task interface. It combines a Rust backend for download management with an Electron shell for the user interface, and supports per-task speed limits, scoped proxy routing, and system protocol registration for magnet, ED2K, and thunder links. The application distinguishes itself through BitTorrent file selection with DHT and peer exchange, encrypted connections, and autonomous peer discovery via trackers. It offers bandwidth control with optional scheduling by day

    TypeScript
    View on GitHub↗8,099
  • microsoft/msquicmicrosoft avatar

    microsoft/msquic

    4,720View on GitHub↗

    MsQuic is a cross-platform, C-based implementation of the QUIC protocol. It provides a network library for establishing encrypted and authenticated transport links over UDP, integrating TLS to ensure all data flows between endpoints are encrypted. The implementation utilizes a language-agnostic binding layer to support high-level languages including C#, Rust, and C++. It features connection-ID based migration to maintain active sessions when IP addresses or ports change, and employs multi-stream multiplexing to manage independent data flows within a single connection. The library covers netw

    Cccppcross-platform
    View on GitHub↗4,720
  • grpc/grpc-gogrpc avatar

    grpc/grpc-go

    22,962View on GitHub↗

    grpc-go is a Go language implementation of the gRPC framework, providing a remote procedure call library for high-performance service communication. It uses the HTTP/2 protocol to execute functions on remote servers as if they were local methods and utilizes protobuf service bindings to generate type-safe client and server code. The project features a bidirectional streaming transport that supports asynchronous, full-duplex message streams between clients and servers. This networking layer allows for various communication patterns, including client-to-server and server-to-client streaming, to

    Godogs-over-catsgiant-robotsgo
    View on GitHub↗22,962
  • ethereum/alethethereum avatar

    ethereum/aleth

    3,969View on GitHub↗

    Aleth is an Ethereum C++ client and full-node implementation. It provides a virtual machine executor for running and debugging bytecode, a blockchain state debugger, and a serialization library for encoding and decoding data using the Recursive Length Prefix format. The project includes a dedicated mining tool for producing blocks and benchmarking hashing hardware performance. It further distinguishes itself with a state debugger that analyzes pre- and post-execution state changes and generates step-by-step execution traces for the virtual machine. The implementation covers node operations i

    C++cppethereumethereum-client
    View on GitHub↗3,969
  • bitpay/bitcorebitpay avatar

    bitpay/bitcore

    4,988View on GitHub↗

    Bitcore is a blockchain development framework and a set of libraries used to build applications that interact with the Bitcoin network and other blockchain protocols. It provides a multi-chain cryptocurrency wallet implementation, a peer-to-peer client for synchronizing distributed ledger data, and a transaction orchestrator for constructing, signing, and broadcasting transactions. The framework features a standardized JSON-RPC wrapper to normalize communication between applications and diverse blockchain node APIs. It implements hierarchical deterministic wallets that derive keys and address

    TypeScript
    View on GitHub↗4,988
  • butlerx/wettybutlerx avatar

    butlerx/wetty

    5,321View on GitHub↗

    Wetty is an HTTP browser terminal emulator that provides shell access over HTTP and HTTPS connections. It functions as a web-based remote shell and SSH browser gateway, allowing users to execute shell commands on remote hosts directly within a web browser. The project integrates SAML2 identity propagation to authenticate users through external providers and map those web identities to system accounts. It also supports embedding the terminal interface within iframes for integration into other web applications or dashboards. The system covers remote server administration and secure terminal pr

    TypeScript
    View on GitHub↗5,321
  • firezone/firezonefirezone avatar

    firezone/firezone

    8,701View on GitHub↗

    Firezone is a zero trust network access platform that uses WireGuard to provide identity-based connectivity to internal network resources. It functions as a virtual private network that synchronizes authentication and user groups via OpenID Connect providers. The system implements a group-based access control engine to enforce least privilege by restricting network resources to specific user groups. It utilizes holepunching and relay protocols for NAT traversal to establish encrypted tunnels through firewalls without requiring inbound ports. The platform includes a control plane for managing

    Elixirclouddevsecopselixir
    View on GitHub↗8,701
  • canopy-network/canopycanopy-network avatar

    canopy-network/canopy

    11,413View on GitHub↗

    Canopy is the official Go implementation of a blockchain node that runs a recursive network architecture, enabling new blockchains to launch as dependent layers that can later graduate into fully independent security roots. The project provides a hybrid consensus mechanism that combines Byzantine fault-tolerant Proof-of-Stake with Verifiable-Delay Functions, delivering instant finality while protecting against long-range attacks through trustless chain age verification. Validators secure multiple chains simultaneously through restaking, where a single bonded stake serves as collateral across t

    Goauto-scaling-architecturelayerless-blockchain-creatormesh-security-provider
    View on GitHub↗11,413
  • mirrornetworking/mirrorMirrorNetworking avatar

    MirrorNetworking/Mirror

    6,218View on GitHub↗
    C#gameshlapikcp
    View on GitHub↗6,218