Home

Awesome

<div align='center'>

awesome-http

šŸ“– A curated list of HTTP clients for various languages & libraries <br>

Pull Requests welcomed. Please see the Contributing Guide before opening a Pull Request.

</div>

Programming Languages

JavaScript

NameDescriptionGitHub Activity
AxiosPromise based HTTP client for the browser and node.jsGitHub stars GitHub commit activity
node-fetchA light-weight module that brings the Fetch API to Node.jsGitHub stars GitHub commit activity
GotšŸŒ Human-friendly and powerful HTTP request library for Node.jsGitHub stars GitHub commit activity
superagentAjax for Node.js and browsers (JS HTTP client)GitHub stars GitHub commit activity
NeedleNimble, streamable HTTP client for Node.js. With proxy, iconv, cookie, deflate & multipart support.GitHub stars GitHub commit activity

Python

NameDescriptionGitHub Activity
RequestsA simple, yet elegant, HTTP library.GitHub stars GitHub commit activity
urllib3Python HTTP library with thread-safe connection pooling, file post support, user friendly, and more.GitHub stars GitHub commit activity
httplib2Small, fast HTTP client library for Python. Features persistent connections, cache, and Google App ā€¦GitHub stars GitHub commit activity
GRequestsRequests + Gevent = <3GitHub stars GitHub commit activity
UplinkA Declarative HTTP Client for PythonGitHub stars GitHub commit activity

Java

NameDescriptionGitHub Activity
Eclipse JettyEclipse JettyĀ® - Web Container & Clients - supports HTTP/2, HTTP/1.1, HTTP/1.0, websocket, servletsā€¦GitHub stars GitHub commit activity
OkHttpSquareā€™s meticulous HTTP client for the JVM, Android, and GraalVM.GitHub stars GitHub commit activity
HeritrixHeritrix is the Internet Archive's open-source, extensible, web-scale, archival-quality web crawlerā€¦GitHub stars GitHub commit activity
Apache HttpClientMirror of Apache HttpClientGitHub stars GitHub commit activity
Google HTTP Client LibraryGoogle HTTP Client Library for JavaGitHub stars GitHub commit activity
Http RequestJava HTTP Request LibraryGitHub stars GitHub commit activity

Rust

NameDescriptionGitHub Activity
reqwestAn easy and powerful Rust HTTP ClientGitHub stars GitHub commit activity
hyperAn HTTP library for RustGitHub stars GitHub commit activity
IsahcThe practical HTTP client that is fun to use.GitHub stars GitHub commit activity
SurfFast and friendly HTTP client framework for async RustGitHub stars GitHub commit activity
curl-rustRust bindings to libcurlGitHub stars GitHub commit activity

Swift

NameDescriptionGitHub Activity
AlamofireElegant HTTP Networking in SwiftGitHub stars GitHub commit activity
SwiftHTTPThin wrapper around NSURLSession in swift. Simplifies HTTP requests.GitHub stars GitHub commit activity
NetHttp Request wrapper written in SwiftGitHub stars GitHub commit activity
MoyaNetwork abstraction layer written in Swift.GitHub stars GitHub commit activity
JustSwift HTTP for HumansGitHub stars GitHub commit activity
KingfisherA lightweight, pure-Swift library for downloading and caching images from the web.GitHub stars GitHub commit activity

Haskell

NameDescriptionGitHub Activity
ReqAn HTTP client libraryGitHub stars GitHub commit activity
http-clientAn HTTP client engine, intended as a base layer for more user-friendly packages.GitHub stars GitHub commit activity
servant-clientMain repository for the servant libraries ā€” DSL for describing, serving, querying, mocking, documenā€¦GitHub stars GitHub commit activity
http-streamsHaskell HTTP client library for use with io-streamsGitHub stars GitHub commit activity

Go

NameDescriptionGitHub Activity
ReqSimple Go HTTP client with Black MagicGitHub stars GitHub commit activity
RestySimple HTTP and REST client library for GoGitHub stars GitHub commit activity
SlingA Go HTTP client library for creating and sending API requestsGitHub stars GitHub commit activity
requestsA golang HTTP client library. Salute to python requests.GitHub stars GitHub commit activity

C++

NameDescriptionGitHub Activity
Apache SerfMirror of Apache SerfGitHub stars GitHub commit activity
Curl for PeopleC++ Requests: Curl for People, a spiritual port of Python Requests.GitHub stars GitHub commit activity
cpp-netlibThe C++ Network Library Project -- cross-platform, standards compliant networking library.GitHub stars GitHub commit activity
WebccLightweight C++ HTTP client and server library based on Asio for embedding purpose.GitHub stars GitHub commit activity
ProxygenA collection of C++ HTTP libraries including an easy to use HTTP server.GitHub stars GitHub commit activity
cpp-httplibA C++ header-only HTTP/HTTPS server and client libraryGitHub stars GitHub commit activity
NFHTTPA cross platform C++ HTTP library that interfaces natively to other platforms.GitHub stars GitHub commit activity
EasyHttpA cross-platform HTTP client library with a focus on usability and speedGitHub stars GitHub commit activity

PHP

NameDescriptionGitHub Activity
GuzzleGuzzle, an extensible PHP HTTP clientGitHub stars GitHub commit activity
HTTPlugHTTPlug, the HTTP client abstraction for PHPGitHub stars GitHub commit activity
HTTP ClientAsync HTTP/1.1+2 client for PHP based on Amp.GitHub stars GitHub commit activity
SendGrid HTTP ClientSendGrid's PHP HTTP Client for calling APIsGitHub stars GitHub commit activity
BuzzPHP's lightweight HTTP clientGitHub stars GitHub commit activity

Bash/Shell

NameDescriptionGitHub Activity
HTTPieAs easy as /aitch-tee-tee-pie/ šŸ„§ Modern, user-friendly command-line HTTP client for the API era. Jā€¦GitHub stars GitHub commit activity
curlA command line tool and library for transferring data with URL syntax, supporting DICT, FILE, FTP, ā€¦GitHub stars GitHub commit activity
aria2aria2 is a lightweight multi-protocol & multi-source, cross platform download utility operated in cā€¦GitHub stars GitHub commit activity
HTTP PromptAn interactive command-line HTTP and API testing client built on top of HTTPie featuring autocompleā€¦GitHub stars GitHub commit activity
RestyLittle command line REST client that you can use in pipelines (bash or zsh).GitHub stars GitHub commit activity
AinA HTTP API client for the terminalGitHub stars GitHub commit activity