Topics / #protocol

Protocol projects on GitHub

Communication protocols including peer-to-peer and blockchain designs.

As of , the most-starred Protocol projects on GitHub are protobuf (72.1K stars), grpc (45.4K stars) and headscale (44.7K stars). GitHub.Locker tracks 61 Protocol repositories with 985.2K stars combined. The fastest-growing on October 16 was buzz, with +57 stars in a day.

61Projects
985.2KStars in total
+305Stars in a day

Hot right now

Most stars gained in a day · Oct 16

The all-time top

61 projects · by stars

  1. #1 · protocolbuffers/protobuf

    protobuf

    Protocol Buffers (protobuf) is Google's language-neutral, platform-neutral, extensible mechanism for serializing structured data, similar to XML but smaller, faster, and simpler.

    72.1K
  2. #2 · grpc/grpc

    grpc

    gRPC is a modern, high-performance open-source RPC (remote procedure call) framework that lets client and server applications communicate transparently across languages and platforms.

    45.4K
  3. #3 · juanfont/headscale

    headscale

    Headscale is an open source, self-hosted implementation of the Tailscale control server, letting you run your own private Tailscale-compatible network instead of paying for Tailscale's hosted service.

    44.7K
  1. 4

    Xray-core

    42.2KXTLS/Xray-core · Go

    Xray-core is the engine of 'Project X', a networking/proxy platform that implements protocols like VLESS, VMess, Trojan and Shadowsocks, with REALITY and XTLS for traffic obfuscation and censorship circumvention.

  2. 5

    buzz

    36.1Kblock/buzz · Rust

    Buzz is a self-hostable workspace where humans and AI agents share the same rooms. Every message, review, workflow step, and git event is a signed Nostr event in one shared log, on a relay you own.

  3. 6

    netty

    35.1Knetty/netty · Java

    Netty is an asynchronous, event-driven network application framework for Java, used to rapidly build maintainable, high-performance protocol servers and clients.

  4. 7

    anoma

    33.6Kanoma/anoma · Elixir

    Anoma is the reference implementation of the Anoma protocol - a distributed, peer-to-peer system combining blockchain-style consensus and cryptography, written mainly in Elixir with a Rust component.

  5. 8

    shadowsocks

    33.5Kshadowsocks/shadowsocks · Python

    An encrypted SOCKS5 proxy for getting private traffic past censorship — that is what the repo's own tags (proxy, socks5, encryption, censorship) describe. It is written in Python, has been on GitHub since April 2012, and holds about 33.5k stars.

  6. 9

    fastmcp

    28.1KPrefectHQ/fastmcp · Python

    FastMCP is an open-source Python framework for building MCP (Model Context Protocol) applications — the layer that connects LLMs to tools and data. It covers servers, clients, and interactive apps.

  7. 10

    A2A

    26.2Ka2aproject/A2A · Shell

    The Agent2Agent (A2A) protocol is an open standard that lets gen AI agents built on different frameworks and run by different companies talk to each other — discovering capabilities, negotiating how to interact, and collaborating on long-running tasks as agents, not just as tools.

  8. 11

    nsq

    25.8Knsqio/nsq · Go

    NSQ is a realtime distributed messaging platform — a message queue built to operate at scale, handling billions of messages per day.

  9. 12

    websocket

    24.9Kgorilla/websocket · Go

    A Go implementation of the WebSocket protocol — a fast, well-tested and widely used Go package for WebSocket client-server communication.

  10. 13

    python-sdk

    24.6Kmodelcontextprotocol/python-sdk · Python

    The official Python SDK for the Model Context Protocol (MCP) — think a web API, but designed for LLM interactions. It lets you build servers that expose data and functionality to LLM applications, and clients that connect to any MCP server.

  11. 14

    ipfs

    23.1Kipfs/ipfs

    IPFS (InterPlanetary File System) is an open, peer-to-peer system for storing and sharing data without relying on a central server.

  12. 15

    ws

    22.8Kwebsockets/ws · JavaScript

    ws is a simple to use, blazing fast, thoroughly tested WebSocket client and server implementation for Node.js, with support for the permessage-deflate compression extension.

  13. 16

    sonic

    21.4Kvaleriansaliou/sonic · Rust

    Sonic is a fast, lightweight and schema-less search backend written in Rust — a simple alternative to heavyweight systems like Elasticsearch, built to answer search queries in microseconds.

  14. 17

    whitepaper

    20.1Kunicitynetwork/whitepaper · TeX

    This repository hosts the Unicity protocol whitepaper and its companion papers, describing the 'Autonomous Agentic Internet', the protocol's system model, tokenomics, and how the network components fit together.

  15. 18

    simplex-chat

    19.6Ksimplex-chat/simplex-chat · Haskell

    SimpleX Chat is a private messaging app for phones and desktops, and the first messaging network that uses no user identifiers of any kind — nobody can link your conversations to who you are. It is 100% private by design.

  16. 19

    gun

    19.1Kamark/gun · JavaScript

    GUN is an open source cybersecurity protocol for syncing decentralized graph data — a peer-to-peer database that keeps app data in sync across browsers and devices, with no master server and no single source of truth.

  17. 20

    APIJSON

    18.4KAPIJSON/APIJSON · Java

    APIJSON is a JSON-based communication protocol and ORM library that auto-provides CRUD APIs and documentation with no backend coding, while clients define exactly what JSON data and structure they get back.

  18. 21

    social-app

    18.3Kbluesky-social/social-app · TypeScript

    This is the official codebase for the Bluesky Social app, the client for the decentralized AT Protocol social network, available on Web, iOS, and Android.

  19. 22

    kcp

    16.9Kskywind3000/kcp · C

    KCP is a fast, reliable ARQ protocol for realtime traffic: it trades 10-20% extra bandwidth for 30-40% lower average latency and up to 3x lower maximum latency than TCP.

  20. 23

    a2ui

    16.7Ka2ui-project/a2ui · TypeScript

    A2UI is an open protocol and set of libraries that let AI agents send a declarative JSON description of a UI, which client apps render using their own native components (Flutter, Angular, Lit, React, etc.) instead of executing agent-generated code.

  21. 24

    diem

    16.7Kdiem/diem · Rust

    Diem Core is the prototype implementation of the Diem blockchain (formerly Libra) — a decentralized, programmable distributed ledger meant to provide financial infrastructure for a global payment network.

  22. 25

    ag-ui

    16.6Kag-ui-protocol/ag-ui · TypeScript

    AG-UI is an open, lightweight, event-based protocol that standardizes how AI agents connect to user-facing applications — a shared event contract between an agent backend and the UI that shows its work.

  23. 26

    hyper

    16.4Khyperium/hyper · Rust

    hyper is an HTTP library for Rust. It ships both client and server APIs, supporting HTTP/1 and HTTP/2.

  24. 27

    impacket

    16.2Kfortra/impacket · Python

    Impacket is a collection of Python classes for working with network protocols, giving low-level programmatic access to packets and, for some protocols like SMB1-3 and MSRPC, full protocol implementations.

  25. 28

    sismo-badges

    15.9Ksismo-core/sismo-badges · TypeScript

    The smart contracts of the Sismo Protocol, a badge minting protocol on Ethereum. Attestations (claims about accounts) are recorded in a registry and surfaced as non-transferable Badge tokens.

  26. 29

    brook

    15.2Ktxthinking/brook · Go

    Brook is a cross-platform programmable network tool that works as both a server and a client, giving you SOCKS5 proxying, TLS encryption, traffic decryption/MITM inspection, and packet capture in one toolkit.

  27. 30

    openvpn

    14.7KOpenVPN/openvpn · C

    OpenVPN is an open-source VPN daemon — a background service that creates a secure, encrypted tunnel over the public internet, so your device can reach a private network as if it were directly connected.

  28. 31

    noVNC

    14.1Knovnc/noVNC · JavaScript

    noVNC is an HTML5 VNC client that lets you connect to and control a remote desktop straight from a web browser, with no plugins needed. It powers browser-based remote access in projects like OpenStack, OpenNebula and ThinLinc.

  29. 32

    EIPs

    14Kethereum/EIPs · Python

    It is the official repository of Ethereum Improvement Proposals (EIPs) — technical standards documents that specify improvements to Ethereum itself and conventions built upon it.

  30. 33

    FreeRDP

    13.8KFreeRDP/FreeRDP · C

    FreeRDP is a free, open-source implementation of Microsoft's Remote Desktop Protocol (RDP) — a C library plus ready-to-use client apps for connecting to remote desktops.

  31. 34

    language-server-protocol

    13Kmicrosoft/language-server-protocol · TypeScript

    This is the home of the Language Server Protocol (LSP), Microsoft's specification that defines a common protocol for language servers — the components editors and IDEs talk to for language features like autocomplete.

  32. 35

    quiche

    12.8Kcloudflare/quiche · Rust

    quiche is Cloudflare's implementation of the QUIC transport protocol and HTTP/3, as specified by the IETF.

  33. 36

    urh

    12.6Kjopohl/urh · Python

    URH (Universal Radio Hacker) is a suite for investigating wireless protocols: it captures radio signals via SDR hardware, demodulates them with automatic modulation detection, and helps you reverse-engineer the bits and bytes flying over the air.

  34. 37

    nostr

    12.1Knostr-protocol/nostr

    Nostr (Notes and Other Stuff Transmitted by Relays) is an open protocol for a censorship-resistant global social network. This repo holds the idea and spec, not an app.

  35. 38

    quic-go

    11.8Kquic-go/quic-go · Go

    quic-go is a pure Go implementation of the QUIC transport protocol (RFC 9000/9001/9002), plus HTTP/3 (RFC 9114) built on top of it.

  36. 39

    Baileys

    11.4KWhiskeySockets/Baileys · JavaScript

    Baileys is an open-source TypeScript/JavaScript library that lets your code talk to WhatsApp directly: it connects over WebSockets to the WhatsApp Web API, so you can read and send messages programmatically without the official Business API.

  37. 40

    bips

    11Kbitcoin/bips · Wikitext

    This is the official repository of Bitcoin Improvement Proposals (BIPs) — design documents and standards for changing and extending Bitcoin, from consensus rules to wallet formats. The repo serves as both the publication medium and the permanent archive for these proposals.

  38. 41

    thrift

    11Kapache/thrift · C++

    Apache Thrift is a lightweight, language-independent software stack for building RPC clients and servers. It generates code from a single interface definition file so programs written in different languages can call each other's procedures and share data.

  39. 42

    spec

    10.8Kulid/spec

    This is the canonical specification for ULID (Universally Unique Lexicographically Sortable Identifier), a 128-bit identifier format designed as a sortable, URL-safe alternative to UUID.

  40. 43

    spotifyd

    10.8KSpotifyd/spotifyd · Rust

    Spotifyd is an open-source Spotify client that runs as a background UNIX daemon instead of a GUI app, streaming music just like the official client but more lightweight.

  41. 44

    fq

    10.6Kwader/fq · Go

    fq is a command-line tool, language and collection of decoders for working with binary formats - often described as jq for binary data. You can dump a file's structure, run jq-style queries against it and explore results in an interactive REPL.

  42. 45

    nom

    10.5Krust-bakery/nom · Rust

    nom is a parser combinator library for Rust: you build safe parsers by composing small functions, without giving up speed or memory efficiency.

  43. 46

    protobuf

    10.1Kgolang/protobuf · Go

    Go bindings for Google's protocol buffers: the github.com/golang/protobuf module for serializing protobuf messages in Go, plus a protoc plugin that generates Go code from .proto files.

  44. 47

    rfcs

    4.2Kastrid-runtime/rfcs · Python

    This repository holds RFCs (design proposals) that define any substantial change to the contract between Astrid's kernel and user-space, covering the host ABI, IPC protocol, capability model, manifest schema, VFS semantics, capsule interface standards, and the SDK's public API.

  45. 48

    sprix-sage-router

    3.6Kwang2122/sprix-sage-router · Python

    SAGE is a research decision layer that sits above the A2A (Agent2Agent) protocol and decides, mid-execution, whether an in-flight task should stay with the current agent (SELF), recruit helpers (COLLABORATE), or be fully handed off to a specialist peer (HANDOFF), based on completed work, artifact reuse, observed quality, budget, and deadline.

  46. 49

    xcertplay

    1.5Kshilapi/xcertplay · Kotlin

    xcertplay turns an Android head unit into a CarPlay receiver, connecting to an MFi authentication chip through a CH341 I2C bridge or the board's native I2C controller, and supports both wired and wireless CarPlay sessions.

  47. 50

    SkyCraft

    1.2Kchasmlol/SkyCraft · C++

    SkyCraft lets you play Skyrim as if you were a Minecraft player: you move with Minecraft's physics, carry Minecraft's inventory and HUD, and place/break Minecraft blocks inside Skyrim's actual world, fighting Skyrim's NPCs with Minecraft weapons.

  48. 51

    iw4L

    1.1Kvladtrc/iw4L · Rust

    IW4L is a Call of Duty runtime written from scratch in Rust on Bevy and wgpu. You point it at an existing Modern Warfare 2 install you already own, and it loads that game's data into its own independent engine using reverse-engineered on-disk layouts.

  49. 52

    benilla

    739samwhosung/benilla · Rust

    Benilla is a complete World of Warcraft 1.12.1 game client, written entirely from scratch in Rust and Bevy, that lets you play questing, dungeons, raids, battlegrounds, guilds, trade and the auction house on the stock 1.12 interface.

  50. 53

    android-airplay-server

    610jqssun/android-airplay-server · Kotlin

    It's an open-source AirPlay receiver app for Android, built on UxPlay, that turns your Android phone or TV into an AirPlay-compatible display and speaker for screen mirroring, video playback, and audio streaming from Apple devices.

  51. 54

    atv-core

    378corvofeng/atv-core · Rust

    atv-core is a high-performance Rust implementation of the Apple TV Companion Link and MediaRemote (MRP) protocols that lets you discover, pair, and control Apple TV targets using the native Apple TV Remote widget in iOS/iPadOS Control Center, without jailbreak or dedicated hardware.

  52. 55

    playport

    283youcci/playport · Kotlin

    PlayPort is a server-side CarPlay receiver that runs on a Mac and turns any browser on your network into a wireless CarPlay screen — touch, knob, media keys, Siri and calls included, with no dongle or app install required.

  53. 56

    spec

    204ooni/spec

    This is OONI Spec, the repository where OONI openly specifies its testing methodology: the experiments (nettests) it runs, the backend components used for testing, and the data formats for the results.

  54. 57

    awesome-mcp-servers

    191mcpHQ/awesome-mcp-servers · JavaScript

    A hand-curated, link-checked catalog of Model Context Protocol (MCP) servers — tools that let AI applications connect to databases, developer tools, browsers, cloud services and more.

  55. 58

    nuvex-docs

    191NuvexNetwork/nuvex-docs · MDX

    This is the documentation site for Nuvex. The protocol itself, the website, and the off-chain services are each kept in their own separate repositories — this repo only contains the docs.

  56. 59

    dsh-std

    158T-Auto/dsh-std · TypeScript

    DSH Standard is a set of universal interoperability protocols that lets DSH plugins, background runtimes, and different user interfaces (TUI, Web UI, desktop apps, headless daemons) decouple from each other and work together.

  57. 60

    DeFiBridgeDiamond

    117emilybarru/DeFiBridgeDiamond · JavaScript

    DeFiBridgeDiamond is a decentralized, multi-asset bridge protocol for moving assets across different blockchains, built to be transparent and practical to use.

  58. 61

    Choir

    116Weber-GeoML/Choir · Python

    Choir is an open protocol for distributed multi-agent autoformalization: a human overseer runs an orchestrator agent that breaks a large formalization project into tasks on a GitHub repo, which other contributors claim and work with their own agents, each billed to their own account.

Often tagged together