Go P2P

Open-source Go projects categorized as P2P

Top 23 Go P2P Projects

  1. frp

    A fast reverse proxy to help you expose a local server behind a NAT or firewall to the internet.

    Project mention: 3 Best Ngrok Alternatives | dev.to | 2025-02-07

    According to its Github page, FRP is "a fast reverse proxy that allows you to expose a local server located behind a NAT or firewall to the internet. It currently supports TCP and UDP, as well as HTTP and HTTPS protocols, enabling requests to be forwarded to internal services via domain name."

  2. CodeRabbit

    CodeRabbit: AI Code Reviews for Developers. Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.

    CodeRabbit logo
  3. syncthing

    Open Source Continuous File Synchronization

    Project mention: Free Obsidian PC Android sync | dev.to | 2025-01-02

    Syncthing on my windows and linux machine

  4. go-ethereum

    Go implementation of the Ethereum protocol

    Project mention: Ethereum Foundation removes their canary | news.ycombinator.com | 2024-03-20

    Even more relevant would be the Ethereum Improvement Proposal repo (where people submit proposals to change the spec):

    https://github.com/ethereum/EIPs

    Or the go-ethereum execution client (the most popular execution client):

    https://github.com/ethereum/go-ethereum

  5. Pion WebRTC

    Pure Go implementation of the WebRTC API

    Project mention: How Nat Traversal Works | news.ycombinator.com | 2025-01-05
  6. go-libp2p

    libp2p implementation in Go

  7. kraken

    P2P Docker registry capable of distributing TBs of data in seconds

    Project mention: BTFS (BitTorrent Filesystem) | news.ycombinator.com | 2024-04-15

    https://github.com/uber/kraken?tab=readme-ov-file#comparison...

    "Kraken was initially built with a BitTorrent driver, however, we ended up implementing our P2P driver based on BitTorrent protocol to allow for tighter integration with storage solutions and more control over performance optimizations.

    Kraken's problem space is slightly different than what BitTorrent was designed for. Kraken's goal is to reduce global max download time and communication overhead in a stable environment, while BitTorrent was designed for an unpredictable and adversarial environment, so it needs to preserve more copies of scarce data and defend against malicious or bad behaving peers.

    Despite the differences, we re-examine Kraken's protocol from time to time, and if it's feasible, we hope to make it compatible with BitTorrent again."

  8. torrent

    Full-featured BitTorrent client package and utilities

    Project mention: BTFS (BitTorrent Filesystem) | news.ycombinator.com | 2024-04-15

    https://github.com/anacrolix/torrent has a fuse driver since 2013. I'm in the early stages of removing it. There are WebDAV, 3rd party FUSE, and HTTP wrappers of the client all doing similar things: serving magnet links, infohashes, and torrent files like an immutable filesystem. BitTorrent v2 support is currently in master.

  9. Nutrient

    Nutrient - The #1 PDF SDK Library. Bad PDFs = bad UX. Slow load times, broken annotations, clunky UX frustrates users. Nutrient’s PDF SDKs gives seamless document experiences, fast rendering, annotations, real-time collaboration, 100+ features. Used by 10K+ devs, serving ~half a billion users worldwide. Explore the SDK for free.

    Nutrient logo
  10. tau

    Open source distributed Platform as a Service (PaaS). A self-hosted Vercel / Netlify / Cloudflare alternative.

    Project mention: 🧑‍💻 Build Your Cloud ☁️ | dev.to | 2024-10-30

    Building your own cloud platform has many benefits, including cost savings, ownership, sovereignty, and most importantly, the ability to make your solution self-hostable. However, constructing a cloud computing platform is a long, complex, and expensive endeavor—a problem partially solved with Tau. Why only partially? Simply because, though Tau is a simple-to-deploy single binary, you still need to get that done, configure Tau, and ensure dependencies like Docker are installed. Not to mention, you have to repeat this on each host for every Tau update. If you ask me, it's not developer-friendly just yet!

  11. weron

    Overlay networks based on WebRTC.

  12. peer-calls

    Group peer to peer video calls for everyone written in Go and TypeScript

    Project mention: Peer Calls: WebRTC peer to peer calls for everyone | news.ycombinator.com | 2024-09-30
  13. autobrr

    Modern, easy to use download automation for torrents and usenet.

  14. portal

    Portal is a quick and easy command-line file transfer utility from any computer to another.

    Project mention: Magic Wormhole: get things from one computer to another, safely | news.ycombinator.com | 2024-08-17

    An alternative that tends to be faster (note: I'm one of the authors) https://github.com/SpatiumPortae/portal

  15. CovenantSQL

    A decentralized, trusted, high performance, SQL database with blockchain features

  16. kairos

    The immutable Linux meta-distribution for edge Kubernetes.

    Project mention: Using SpinKube on Kairos | dev.to | 2024-12-13

    Kairos is a Linux meta-distribution, which means it adds powerful features to distributions you are already familiar with. Here are some of the features it has to offer:

  17. any-sync

    An open-source protocol designed to create high-performance, local-first, peer-to-peer, end-to-end encrypted applications that facilitate seamless collaboration among multiple users and devices

    Project mention: Ask HN: Can Someone Explain Syncing via iCloud? | news.ycombinator.com | 2024-08-29

    OP here, why not implement something like this https://github.com/anyproto/any-sync ?

  18. IceFireDB

    @IceFireLabs -> IceFireDB is a database built for web3.0 It strives to fill the gap between web2 and web3.0 with a friendly database experience, making web3 application data storage more convenient, and making it easier for web2 applications to achieve decentralization and data immutability.

  19. distribyted

    Torrent client with HTTP, fuse, and WebDAV interfaces. Start exploring your torrent files right away, even zip, rar, or 7zip archive contents!

  20. rain

    🌧 BitTorrent client and library in Go

  21. mx-chain-go

    ⚡ The official implementation of the MultiversX blockchain protocol, written in golang.

  22. redwood

    A highly-configurable, distributed, realtime database that manages a state tree shared among many peers. (by brynbellomy)

    Project mention: Ergo: Erlang-inspired event driven actor framework in Go | news.ycombinator.com | 2024-09-12

    with that said it’s quite easy to write an equivalent- https://github.com/redwood/redwood/blob/develop/utils/mailbo...

  23. go-spacemesh

    Go Implementation of the Spacemesh protocol full node. 💾⏰💪

  24. dcrd

    Decred daemon in Go (golang).

  25. bacalhau

    Compute over Data framework for public, transparent, and optionally verifiable computation

  26. SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020).

Go P2P discussion

Log in or Post with

Go P2P related posts

  • A Local-First Case Study

    5 projects | news.ycombinator.com | 1 Oct 2024
  • Peer Calls: WebRTC peer to peer calls for everyone

    2 projects | news.ycombinator.com | 30 Sep 2024
  • Golang WebRTC. Como usar Pion 🌐Remote Controller

    4 projects | dev.to | 14 Jul 2024
  • JuiceFS 1.2: Introducing Enterprise-Grade Permission Management and Smooth Upgrades

    2 projects | dev.to | 20 Jun 2024
  • Bitmagnet Allows People to Run Their Own Decentralized Torrent Indexer Locally

    5 projects | news.ycombinator.com | 18 Feb 2024
  • Filecoin Foundation Successfully Deploys IPFS in Space

    8 projects | news.ycombinator.com | 16 Jan 2024
  • Geth v1.13.5: Further fixes to path state scheme quirks

    1 project | /r/ethereum | 15 Nov 2023
  • A note from our sponsor - Nutrient
    nutrient.io | 14 Feb 2025
    Bad PDFs = bad UX. Slow load times, broken annotations, clunky UX frustrates users. Nutrient’s PDF SDKs gives seamless document experiences, fast rendering, annotations, real-time collaboration, 100+ features. Used by 10K+ devs, serving ~half a billion users worldwide. Explore the SDK for free. Learn more →

Index

What are some of the best open-source P2P projects in Go? This list will help you:

# Project Stars
1 frp 90,350
2 syncthing 67,593
3 go-ethereum 48,339
4 Pion WebRTC 14,250
5 go-libp2p 6,224
6 kraken 6,196
7 torrent 5,669
8 tau 3,706
9 weron 1,842
10 peer-calls 1,803
11 autobrr 1,636
12 portal 1,563
13 CovenantSQL 1,497
14 kairos 1,223
15 any-sync 1,132
16 IceFireDB 1,109
17 distribyted 1,076
18 rain 1,019
19 mx-chain-go 937
20 redwood 876
21 go-spacemesh 768
22 dcrd 754
23 bacalhau 745

Sponsored
CodeRabbit: AI Code Reviews for Developers
Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.
coderabbit.ai

Did you know that Go is
the 4th most popular programming language
based on number of references?