Topics / #http

HTTP projects on GitHub

The web core protocol and the clients, servers, and tooling built around it.

As of , the most-starred HTTP projects on GitHub are axios (109.3K stars), system-design-101 (90.5K stars) and hoppscotch (80.6K stars). GitHub.Locker tracks 210 HTTP repositories with 4.2M stars combined. The fastest-growing on October 16 was YunX, with +119 stars in a day.

210Projects
4.2MStars in total
+1KStars in a day

Hot right now

Most stars gained in a day · Oct 16

The all-time top

Top 100 of 210 · by stars

  1. #1 · axios/axios

    axios

    axios is a promise-based HTTP client for JavaScript: you use it to send requests to APIs and servers and then work with the responses as promises.

    109.3K
  2. #2 · ByteByteGoHq/system-design-101

    system-design-101

    A free, visual collection of short explainers and cheat sheets covering core system design concepts (APIs, databases, caching, message queues, real-world company architectures) to help you understand how production systems work and prepare for system design interviews.

    90.5K
  3. #3 · hoppscotch/hoppscotch

    hoppscotch

    Hoppscotch is an open-source API development ecosystem for building, testing and debugging REST, GraphQL, WebSocket, MQTT, Server-Sent Events and Socket.IO APIs, positioned as an open alternative to Postman or Insomnia.

    80.6K
  1. 4

    caddy

    78.1Kcaddyserver/caddy · Go

    Caddy is a fast, extensible web server written in Go that enables HTTPS automatically by default. It can act as an HTTP/1-2-3 server, reverse proxy, and general platform for running Go-based 'apps' (modules).

  2. 5

    flask

    74.9Kpallets/flask · Python

    Flask is a lightweight WSGI web application framework for Python — designed to make getting started quick and easy, with the ability to scale up to complex applications.

  3. 6

    express

    69.6Kexpressjs/express · JavaScript

    Express is a fast, unopinionated, minimalist web framework for Node.js, used for building HTTP servers, APIs, and web apps.

  4. 7

    socket.io

    63.2Ksocketio/socket.io · TypeScript

    Socket.IO is a library that enables bidirectional, low-latency, real-time communication between a Node.js server and clients such as browsers or mobile apps.

  5. 8

    trackerslist

    55.4Kngosang/trackerslist

    A collection of lists of public BitTorrent trackers that is checked and updated automatically every day, intended to be added to torrents or magnet links to improve peer discovery.

  6. 9

    requests

    54.5Kpsf/requests · Python

    It is a simple, yet elegant, HTTP library for Python that lets you send HTTP/1.1 requests extremely easily.

  7. 10

    3x-ui

    48.1KMHSanaei/3x-ui · Go

    3X-UI is an open-source web control panel for managing Xray-core servers, letting you deploy, configure, and monitor many proxy and VPN protocols from one VPS or across multiple nodes.

  8. 11

    okhttp

    47.1Klysine-dev/okhttp · Kotlin

    OkHttp is an efficient HTTP client for the JVM, Android, and GraalVM, handling HTTP/1.1, HTTP/2, websockets, and SSE with connection pooling and transparent GZIP.

  9. 12

    mitmproxy

    45.7Kmitmproxy/mitmproxy · Python

    mitmproxy is an interactive, SSL/TLS-capable intercepting proxy for HTTP/1, HTTP/2, and WebSockets, used by penetration testers and developers to inspect and modify traffic. mitmdump is its CLI version, and mitmweb is a web-based interface.

  10. 13

    what-happens-when

    43.4Kalex/what-happens-when

    A long-form, extremely detailed walkthrough answering the classic interview question of what happens when you type google.com into your browser and press enter, tracing the whole path from keypress to rendered page.

  11. 14

    aria2

    43.1Karia2/aria2 · C++

    aria2 is a lightweight, cross-platform command-line download utility that fetches files over HTTP(S), FTP, SFTP, BitTorrent, and Metalink, and can combine multiple protocols/sources for the same file to maximize bandwidth.

  12. 15

    curl

    43.1Kcurl/curl · C

    curl is a command-line tool and library (libcurl) for transferring data to or from a server using URL syntax.

  13. 16

    Alamofire

    42.4KAlamofire/Alamofire · Swift

    Alamofire is an HTTP networking library written in Swift. It wraps Apple's URLSession so iOS, macOS, tvOS, and watchOS apps can make requests in a few lines of chainable code.

  14. 17

    dubbo

    41.6Kapache/dubbo · Java

    Apache Dubbo is an RPC and microservices framework — this repository is its Java implementation. It covers communication, service discovery, traffic management, observability, security, and tooling for building enterprise-grade microservices.

  15. 18

    wrk

    40.4Kwg/wrk · C

    wrk is a modern HTTP benchmarking tool that generates significant load against a server using a single multi-core machine, measuring latency and throughput.

  16. 19

    fiber

    40.2Kgofiber/fiber · Go

    Fiber is an Express-inspired web framework for Go, built on top of the fasthttp engine, with fast development and high performance in mind.

  17. 20

    insomnia

    40KKong/insomnia · TypeScript

    Insomnia is an open-source, cross-platform API client for debugging, designing, testing and mocking APIs over GraphQL, REST, WebSockets, SSE and gRPC.

  18. 21

    cli

    38.6Khttpie/cli · Python

    HTTPie is a command-line HTTP client built to make interacting with APIs and web servers from the terminal as human-friendly as possible. It ships two commands, http and https, for sending arbitrary HTTP requests with simple syntax and colorized, formatted output.

  19. 22

    fastify

    37.3Kfastify/fastify · JavaScript

    Fastify is a fast, low-overhead web framework for Node.js used to build HTTP servers and APIs. It is inspired by Hapi and Express and ranks among the fastest web frameworks around.

  20. 23

    koa

    35.7Kkoajs/koa · JavaScript

    Koa is an expressive HTTP middleware framework for Node.js built on ES2017 async functions, designed to make writing web apps and APIs more enjoyable.

  21. 24

    framework

    35Klaravel/framework · PHP

    Laravel is a PHP web application framework known for expressive, elegant syntax, built to make development enjoyable and to ease the common tasks most web projects share.

  22. 25

    nps

    34.2Kehang-io/nps · Go

    NPS is a lightweight, high-performance intranet penetration (reverse proxy/tunnel) server that exposes internal network services to the outside world. It forwards tcp, udp, http(s), socks5 and other protocols, and comes with a full-featured web admin panel.

  23. 26

    remix

    33.4Kremix-run/remix · TypeScript

    Remix 3 is a full-stack web framework built directly on Web APIs (Streams, Fetch, Web Crypto) rather than bundler-specific abstractions, distributed as one umbrella 'remix' package made of many standalone JS/TS tools.

  24. 27

    go-zero

    33.4Kzeromicro/go-zero · Go

    go-zero is a cloud-native Go framework for building web and RPC microservices, packed with built-in engineering practices. It has been serving sites with tens of millions of users for years and is listed in the CNCF Landscape.

  25. 28

    AFNetworking

    33.3KAFNetworking/AFNetworking · Objective-C

    A delightful networking library for iOS, macOS, watchOS and tvOS, built on the Foundation URL Loading System. Deprecated since January 2023 - the repo remains online as an archive.

  26. 29

    echo

    32.8Klabstack/echo · Go

    Echo is a high performance, minimalist web framework for Go, used to build web apps, RESTful APIs and microservices.

  27. 30

    hono

    32.6Khonojs/hono · TypeScript

    Hono (Japanese for 'flame' 🔥) is a small, simple, and ultrafast web framework built on Web Standards for the TypeScript and JavaScript ecosystem.

  28. 31

    beego

    32.4Kbeego/beego · Go

    Beego is an open-source, high-performance web framework for Go, aimed at rapid development of enterprise applications: RESTful APIs, web apps and backend services.

  29. 32

    k6

    32Kgrafana/k6 · Go

    k6 is a modern load-testing tool: you write test scripts that simulate real user traffic against your application to see how it performs. It is built for developers and testers in the DevOps era — like unit testing, but for performance.

  30. 33

    nginx

    31.9Knginx/nginx · C

    NGINX ('engine x') is a free, open source web server, load balancer, reverse proxy, API gateway and content cache — described as the world's most popular web server.

  31. 34

    openai-python

    31.9Kopenai/openai-python · Python

    This is the official Python library for the OpenAI API, giving convenient programmatic access to OpenAI models like GPT for text, vision, audio and more.

  32. 35

    influxdb

    31.8Kinfluxdata/influxdb · Rust

    InfluxDB 3 Core is an open source time series database built to collect, process, transform, and store event and time series data, written in Rust on top of Apache Arrow, DataFusion, and Parquet.

  33. 36

    OpenAPI-Specification

    31.3KOAI/OpenAPI-Specification · Markdown

    The OpenAPI Specification (OAS) is a community-driven open standard from the OpenAPI Initiative, a Linux Foundation Collaborative Project: a standard, programming language-agnostic way to describe HTTP APIs.

  34. 37

    wttr.in

    30.7Kchubin/wttr.in · Go

    wttr.in is a console-oriented weather forecast service: you check the weather with curl from a terminal or open it in a browser, and it draws the forecast as ASCII art for terminals, HTML for browsers, or PNG images for graphical viewers.

  35. 38

    hutool

    30.2Kchinabugotech/hutool · Java

    Hutool calls itself 'a set of tools that keep Java sweet': a rich, easy-to-use Java utility library whose tool classes help you get everyday development tasks done quickly.

  36. 39

    NeteaseCloudMusicApi

    30.2KBinaryify/NeteaseCloudMusicApi

    NeteaseCloudMusicApi is an open-source Node.js API service that wraps Netease Cloud Music, one of China's largest music streaming platforms, so your code can talk to it over HTTP. It has collected about 30,000 GitHub stars since 2016.

  37. 40

    django-rest-framework

    30.2Kencode/django-rest-framework · Python

    Django REST framework is a powerful and flexible toolkit for building Web APIs with Django: you add it to a project and get a full REST API around your data.

  38. 41

    CloudflareSpeedTest

    29.5KXIU2/CloudflareSpeedTest · Go

    A command-line tool that tests Cloudflare CDN latency and download speed to find the fastest IPs (IPv4 + IPv6) for your connection. It also supports other CDNs and sites that resolve to multiple IPs.

  39. 42

    locust

    28.2Klocustio/locust · Python

    Locust is an open source performance/load testing tool for HTTP and other protocols — you define your tests in regular Python code and run them from the command line or a web-based UI.

  40. 43

    postgrest

    27.7KPostgREST/postgrest · Haskell

    PostgREST is a standalone server that turns any existing PostgreSQL database into a full RESTful API automatically — no backend code to write.

  41. 44

    pingora

    27.6Kcloudflare/pingora · Rust

    Pingora is a Rust framework by Cloudflare for building fast, reliable, and programmable network services and proxies. It is battle-tested, having served more than 40 million internet requests per second for years.

  42. 45

    axum

    27.5Ktokio-rs/axum · Rust

    axum is an HTTP routing and request-handling library for Rust with a focus on ergonomics and modularity — the kind of crate you build web services and APIs with.

  43. 46

    gopeed

    27KGopeedLab/gopeed · Dart

    Gopeed (short for Go Speed) is a free, open-source download manager built with Go and Flutter. It handles HTTP, HTTPS, BitTorrent, magnet links, and ed2k across desktop, mobile, and the web.

  44. 47

    vapor

    26.2Kvapor/vapor · Swift

    Vapor is an HTTP web framework for Swift — a foundation for building websites, APIs, and cloud projects on the server.

  45. 48

    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.

  46. 49

    crawlee

    26.2Kapify/crawlee · TypeScript

    A web scraping and browser automation library for Node.js: you write crawlers in JavaScript or TypeScript to crawl sites, extract data (e.g. for AI, LLM and RAG pipelines) and save it to disk or cloud.

  47. 50

    kratos

    26Kgo-kratos/kratos · Go

    Kratos is a lightweight Go framework for building cloud-native microservices, with small, explicit APIs so your code can focus on business logic instead of plumbing.

  48. 51

    fetch

    25.8KJakeChampion/fetch · JavaScript

    A window.fetch polyfill — a Promise-based mechanism for making web requests in the browser, giving older browsers the fetch API as a replacement for XMLHttpRequest.

  49. 52

    Rocket

    25.8Krwf2/Rocket · Rust

    Rocket is an async web framework for Rust focused on usability, security, extensibility, and speed — you write Rust, and Rocket handles routing and dispatching web requests.

  50. 53

    iris

    25.6Kkataras/iris · Go

    Iris is an open-source web framework for Go for building websites and APIs. It bills itself as fast, fully featured and easy to learn, with MVC, sessions, websockets and lots of built-in middleware.

  51. 54

    colly

    25.6Kgocolly/colly · Go

    Colly is a scraping and crawling framework for Go: a clean interface for writing any kind of crawler, scraper or spider that extracts structured data from websites, for things like data mining, processing or archiving.

  52. 55

    request

    25.5Krequest/request · JavaScript

    Request is a simplified HTTP client for Node.js, built to make HTTP calls as simply as possible. It supports HTTPS and follows redirects by default.

  53. 56

    vegeta

    25.2Ktsenart/vegeta · Go

    Vegeta is a versatile HTTP load testing tool that drills HTTP services with a constant request rate — its tagline: It's over 9000! It works as both a CLI and a Go library and avoids Coordinated Omission.

  54. 57

    actix-web

    24.9Kactix/actix-web · Rust

    Actix Web is a powerful, pragmatic and extremely fast web framework for Rust, used to build web servers, APIs and realtime services.

  55. 58

    proxyee-down

    24.6Kproxyee-down-org/proxyee-down · Java

    Proxyee Down is an open-source, free HTTP downloader built on an HTTP proxy layer, offering multi-connection chunked downloads and support for custom HTTP requests, with an extension system for special download needs.

  56. 59

    proxy_pool

    23.8Kjhao104/proxy_pool · Python

    ProxyPool is an open-source proxy IP pool for web spiders: it keeps harvesting free proxies from the web, checks that they work, stores the good ones in Redis and serves them to your crawler over a small HTTP API.

  57. 60

    fasthttp

    23.5Kvalyala/fasthttp · Go

    FastHTTP is a fast HTTP server and client library for Go, tuned for high performance: zero memory allocations in hot paths and up to 10x the speed of net/http.

  58. 61

    anubis

    23.5KTecharoHQ/anubis · Go

    Anubis is a Web AI Firewall Utility that weighs the soul of incoming connections with challenges to protect upstream resources from AI scraper bots — built to defend the small internet from endless storms of AI-company requests.

  59. 62

    guzzle

    23.4Kguzzle/guzzle · PHP

    Guzzle is an extensible PHP HTTP client library that makes it easy to send HTTP requests and trivial to integrate with web services.

  60. 63

    api-guidelines

    23.3Kmicrosoft/api-guidelines

    A collection of guidelines published by Microsoft for designing consistent, well-behaved RESTful web APIs, shared publicly to foster dialogue in the broader API community.

  61. 64

    grpc-go

    23.1Kgrpc/grpc-go · Go

    The Go implementation of gRPC: a high performance, open source, general RPC framework that puts mobile and HTTP/2 first. You use it to build gRPC clients and servers in Go.

  62. 65

    chi

    23Kgo-chi/chi · Go

    chi is a lightweight, idiomatic and composable router for building Go HTTP services, aimed especially at large REST APIs that stay maintainable as the project grows and changes.

  63. 66

    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.

  64. 67

    sails

    22.8Kbalderdashy/sails · JavaScript

    Sails.js is a realtime MVC web framework for Node.js, designed to make it easy to build custom, enterprise-grade apps and APIs, with a structure inspired by Ruby on Rails.

  65. 68

    SafeLine

    22.8Kchaitin/SafeLine · Go

    SafeLine is a self-hosted web application firewall (WAF) and reverse proxy that protects your web apps from attacks and exploits by filtering and monitoring HTTP traffic.

  66. 69

    thingsboard

    22.6Kthingsboard/thingsboard · Java

    ThingsBoard is an open-source IoT platform for device management, data collection, processing, and visualization: connect devices, store their telemetry, and build dashboards on top.

  67. 70

    tornado

    22.2Ktornadoweb/tornado · Python

    Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed. Thanks to non-blocking network I/O it can scale to tens of thousands of open connections.

  68. 71

    mux

    21.8Kgorilla/mux · Go

    A request router and dispatcher for Go web servers: it matches incoming requests to the right handler based on the URL and other conditions. The name mux stands for 'HTTP request multiplexer'.

  69. 72

    hey

    20.7Krakyll/hey · Go

    hey is a tiny command-line HTTP load generator that sends a configurable number of requests at a given concurrency level and prints performance stats, acting as a replacement for ApacheBench (ab).

  70. 73

    grpc-gateway

    20Kgrpc-ecosystem/grpc-gateway · Go

    gRPC-Gateway is a protoc plugin that reads your protobuf service definitions and generates a reverse-proxy server which translates a RESTful HTTP API into gRPC, so one service can serve both gRPC and RESTful JSON clients at the same time.

  71. 74

    nginx-proxy

    19.9Knginx-proxy/nginx-proxy · Python

    A Docker image that runs nginx plus docker-gen: when containers start or stop, docker-gen regenerates the reverse proxy config and reloads nginx, so routing updates itself.

  72. 75

    ingress-nginx

    19.5Kkubernetes/ingress-nginx · Go

    ingress-nginx was an Ingress controller for Kubernetes that used NGINX as a reverse proxy and load balancer to route traffic into clusters. The project is now retired.

  73. 76

    yaak

    19.3Kmountain-loop/yaak · TypeScript

    Yaak is a free, open-source desktop API client for firing off REST, GraphQL, WebSocket, Server-Sent Events, and gRPC requests — a privacy-first alternative to Postman, Insomnia, and Bruno.

  74. 77

    goreplay

    19.3Kprobelabs/goreplay · Go

    GoReplay is an open-source network monitoring tool that records your live HTTP traffic and reuses it for shadowing, load testing, monitoring and analysis — so you test with real data instead of synthetic scripts, and deploy with more confidence.

  75. 78

    hurl

    19.3KOrange-OpenSource/hurl · Rust

    Hurl is a command line tool that runs HTTP requests written in a simple plain text format. It can chain requests, capture values and evaluate queries on response headers and body — for fetching data as well as testing HTTP sessions.

  76. 79

    elysia

    19.3Kelysiajs/elysia · TypeScript

    Elysia is a TypeScript framework for building HTTP servers and APIs. It pitches end-to-end type safety and a polished developer experience, and it is built on the Bun runtime.

  77. 80

    core

    19.1Kadonisjs/core · TypeScript

    AdonisJS is a TypeScript-first, fullstack MVC web framework for Node.js, used to build web apps, API servers, and microservices.

  78. 81

    uWebSockets

    19KuNetworking/uWebSockets · C++

    μWebSockets is a simple, secure and standards-compliant web server for demanding applications, built as a C++ library — so optimized for speed and memory that its TLS 1.3 encrypted messaging outruns most servers' cleartext.

  79. 82

    iii

    18.8Kiii-hq/iii · Rust

    iii is a real-time engine for your backend stack: queues, cron, HTTP, state, observability, agents, and sandboxes are collapsed into one live system surface where every service is composable and observable.

  80. 83

    sanic

    18.6Ksanic-org/sanic · Python

    Sanic is a Python 3.10+ web server and web framework written to go fast — you build your app with its framework and it serves it over HTTP at high performance.

  81. 84

    msw

    18.3Kmswjs/msw · TypeScript

    Mock Service Worker (MSW) is the industry-standard API mocking library for JavaScript. It intercepts the network requests your app makes and serves mock responses you define, so you never touch a real backend.

  82. 85

    brpc

    17.6Kapache/brpc · C++

    bRPC is an industrial-grade C++ RPC framework built at Baidu for high-performance systems like search, storage, machine learning, advertisement and recommendation; the name stands for 'better RPC'.

  83. 86

    ZLMediaKit

    17.6KZLMediaKit/ZLMediaKit · C++

    A high-performance, production-grade streaming media server framework written in C++11: it takes in live streams and serves them across many protocols, converting between them on the fly.

  84. 87

    JustAuth

    17.5Kjustauth/JustAuth · Java

    JustAuth is a small, feature-complete Java library for third-party OAuth login. It integrates dozens of Chinese and international providers, so you can add social login without wrestling each platform's own SDK.

  85. 88

    kubo

    17.2Kipfs/kubo · Go

    Kubo is the original and most widely-used Go implementation of IPFS: a daemon that stores and serves content-addressed data over a peer-to-peer network, with a CLI, a WebUI, an HTTP Gateway, and an HTTP RPC API to control it.

  86. 89

    goproxy

    17.1Ksnail007/goproxy · Go

    goproxy is a high-performance proxy server written in Go. A single binary handles HTTP(S), SOCKS5, SS, WebSocket, TCP and UDP proxying, plus TCP/UDP port forwarding and intranet penetration for exposing servers behind NAT.

  87. 90

    httprouter

    17.1Kjulienschmidt/httprouter · Go

    HttpRouter is a lightweight, high performance HTTP request router (a multiplexer) for Go, built as an alternative to the default net/http mux.

  88. 91

    ky

    17.1Ksindresorhus/ky · TypeScript

    Ky is a tiny, elegant HTTP client for JavaScript built on top of the Fetch API. It keeps fetch's model but adds retries, timeouts, JSON handling, progress events, and hooks — with zero dependencies.

  89. 92

    cpp-httplib

    16.9Kyhirose/cpp-httplib · C++

    A C++11 single-file header-only HTTP/HTTPS server and client library — you add networking to a C++ program by including one header, httplib.h.

  90. 93

    ffuf

    16.9Kffuf/ffuf · Go

    ffuf is a fast web fuzzer written in Go — a command-line tool that sends many crafted requests to a target to discover directories, virtual hosts, and fuzzable GET/POST parameters.

  91. 94

    how-web-works

    16.8Kvasanthk/how-web-works

    A detailed walkthrough of everything that happens behind the scenes between typing 'google.com' into a browser and the page rendering on screen, covering keyboard input, URL parsing, DNS, TLS, HTTP, and browser rendering internals.

  92. 95

    Arduino

    16.7Kesp8266/Arduino · C++

    This is the ESP8266 core for the Arduino IDE. It brings support for the ESP8266 WiFi chip to the Arduino environment, so you can write sketches with familiar Arduino functions and run them directly on the ESP8266 without an external microcontroller.

  93. 96

    chisel

    16.7Kjpillora/chisel · Go

    Chisel is a fast TCP/UDP tunnel transported over HTTP and secured via SSH — a single executable that runs as either client or server, mainly used for passing through firewalls or providing a secure endpoint into your network.

  94. 97

    superagent

    16.6Kforwardemail/superagent · JavaScript

    Superagent is a small, progressive HTTP request library with the same API in the browser and in Node.js, supporting many high-level HTTP client features.

  95. 98

    aiohttp

    16.6Kaio-libs/aiohttp · Python

    aiohttp is an asynchronous HTTP client and server framework built on asyncio: one Python package for making HTTP requests and for building web applications, with WebSockets supported out of the box.

  96. 99

    Cloudflare-vless-trojan

    16.6Kyonggekkk/Cloudflare-vless-trojan · JavaScript

    Scripts that deploy free VLESS-WS(TLS) and Trojan-WS(TLS) proxy nodes on Cloudflare Workers/Pages, plus a local Socks5/HTTP proxy script with ECH-TLS, normal TLS or no-TLS modes for devices like soft routers.

  97. 100

    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.

Showing the 100 most-starred of 210. See every one in the catalog.

Often tagged together