awesome-repositories.com
Blog
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 square/okhttp

Open-source alternatives to Okhttp

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

  • encode/httpxencode avatar

    encode/httpx

    15,090View on GitHub↗

    This project is a comprehensive Python network request framework designed for both synchronous and asynchronous HTTP communication. It provides a high-performance client capable of executing non-blocking requests within event-driven applications, while also supporting standard blocking calls for simpler scripts. The library is built to operate natively across diverse asynchronous runtimes, automatically detecting and utilizing the underlying event loop for concurrency. What distinguishes this library is its modular architecture, which decouples request construction from network execution thro

    Pythonasynciohttppython
    View on GitHub↗15,090
  • curl/curlcurl avatar

    curl/curl

    42,214View on GitHub↗

    Curl is a command-line tool and portable library for transferring data across a wide range of network protocols. It functions as a unified engine that abstracts diverse communication standards, allowing users and developers to move files and information between servers using a consistent interface. The project provides both a versatile command-line client for terminal-based automation and a stable programmatic interface for integrating complex network operations into applications. The system is distinguished by its protocol-agnostic core and its ability to manage both synchronous and asynchro

    Ccclientcurl
    View on GitHub↗42,214
  • sindresorhus/gotsindresorhus avatar

    sindresorhus/got

    14,915View on GitHub↗

    Got is a promise-based HTTP request library for Node.js that supports HTTP/2 and streaming. It provides a system for making network requests with a focus on asynchronous control flow and type-safe API client development. The library is distinguished by its middleware-based request lifecycle, which uses interceptors and plugins to modify request options and response data. It includes a configurable automatic retry mechanism with backoff strategies, a built-in HTTP response cache, and a cookie-jar system for maintaining persistent sessions. Broad capabilities cover data handling through duplex

    TypeScripthttphttp-clienthttp-request
    View on GitHub↗14,915

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
  • axios/axiosaxios avatar

    axios/axios

    109,077View on GitHub↗

    Axios is an isomorphic, promise-based HTTP client designed for making asynchronous network requests across different JavaScript execution environments, including the browser and Node.js. It functions as a JSON API client that serializes JavaScript objects into JSON and parses server responses into structured data. The project features a system for managing reusable client instances with shared configurations, such as base URLs and default settings. It includes a mechanism for intercepting outgoing requests and incoming responses globally, allowing data to be transformed before it reaches the

    JavaScripthacktoberfesthttp-clientjavascript
    View on GitHub↗109,077
  • nock/nocknock avatar

    nock/nock

    13,103View on GitHub↗

    nock is a Node.js HTTP mocking library and request interceptor. It captures outgoing network traffic to specific hosts and paths, returning predefined responses to decouple applications from external servers during automated testing. The project functions as an API expectation framework to verify that specific calls were made with correct parameters. It includes a traffic recorder that captures real network interactions as fixtures for playback and a network simulation tool to introduce artificial latency or trigger network errors. Its capabilities cover request matching via hostnames, paths

    JavaScripthttpjavascriptmock
    View on GitHub↗13,103
  • yhirose/cpp-httplibyhirose avatar

    yhirose/cpp-httplib

    16,597View on GitHub↗

    This is a header-only C++ library that provides implementations for HTTP clients, HTTP servers, and a WebSocket framework. It allows for the creation of network services and the consumption of remote APIs without requiring a separate compilation step or external binary linking. The project features backend-agnostic TLS integration for secure HTTPS and WSS communication and employs a thread-pool model to process concurrent requests. It distinguishes itself with a full-duplex WebSocket state-machine and a middleware-based request pipeline that supports regular-expression path routing. The libr

    C++
    View on GitHub↗16,597
  • guzzle/guzzleguzzle avatar

    guzzle/guzzle

    23,453View on GitHub↗

    Guzzle is a PHP HTTP client used for sending synchronous and asynchronous requests to web services. It serves as a concurrent HTTP request manager, an HTTP stream handler, and a middleware-based HTTP pipeline. The project is a PSR-7 compliant client, utilizing standardized PHP interfaces for requests, responses, and streams. The library differentiates itself through a customizable functional handler stack that allows for the interception and modification of the request and response lifecycle. It features an adapter-based transport system that enables swapping between network implementations,

    PHP
    View on GitHub↗23,453
  • asynchttpclient/async-http-clientAsyncHttpClient avatar

    AsyncHttpClient/async-http-client

    6,392View on GitHub↗

    This is a non-blocking network client for Java applications that provides asynchronous HTTP request capabilities and bidirectional WebSocket connectivity. It leverages a Netty-based architecture to handle high volumes of network input and output. The library utilizes native transport abstractions such as Epoll, KQueue, and io_uring to reduce system latency. It supports HTTP/2 multiplexing to run multiple concurrent request-response streams over a single connection and provides automatic response body decompression for various formats. Core capabilities cover the management of complex network

    Javaahcasyncasynchttpclient
    View on GitHub↗6,392
  • websocket-client/websocket-clientwebsocket-client avatar

    websocket-client/websocket-client

    3,706View on GitHub↗

    This is a Python WebSocket client library designed to establish full-duplex, persistent network connections for real-time exchange of text and binary data. It functions as an asynchronous network client and a TCP socket wrapper, managing the complete lifecycle of a connection from the initial handshake to graceful closure. The implementation includes a secure WebSocket client that handles SSL/TLS encryption, certificate verification, and secure handshake protocols. It further distinguishes itself by supporting advanced connectivity options, including proxy routing via HTTP or SOCKS proxies an

    Pythonpythonrfc-6455websocket
    View on GitHub↗3,706
  • seanmonstar/reqwestseanmonstar avatar

    seanmonstar/reqwest

    11,675View on GitHub↗

    This library is a high-level networking tool for the Rust programming language, designed to execute HTTP requests and interact with remote services and REST APIs. It provides both asynchronous and blocking interfaces, allowing developers to send data using formats such as JSON or multipart forms while maintaining type-safe communication with external web services. The library distinguishes itself through a comprehensive architecture that manages network sessions and data flow. It utilizes connection pooling to maintain persistent sockets, which reduces latency during consecutive requests to t

    Rusthttphttp-clientrust
    View on GitHub↗11,675
  • node-fetch/node-fetchnode-fetch avatar

    node-fetch/node-fetch

    8,857View on GitHub↗

    node-fetch is a promise-based HTTP client library that provides a lightweight implementation of the Fetch API for the Node.js runtime. It serves as a network interface for performing asynchronous HTTP requests, handling server communication, and managing headers. The library utilizes a promise-based request lifecycle to wrap network calls, ensuring asynchronous behavior. It incorporates stream-based handling for both requests and responses to process large payloads efficiently without overloading system memory. Its capabilities cover a broad range of network communication tasks, including th

    JavaScriptfetchfetch-apihacktoberfest
    View on GitHub↗8,857
  • aio-libs/aiohttpaio-libs avatar

    aio-libs/aiohttp

    16,351View on GitHub↗

    This project is an asynchronous network framework for Python that provides both a client and a server for HTTP communication. It is designed to handle high-concurrency network operations by leveraging cooperative multitasking, allowing for the management of thousands of simultaneous connections without the overhead of traditional thread-per-request models. The framework distinguishes itself through its focus on efficient resource management and persistent communication. It utilizes connection pooling to reuse network sockets, which reduces latency during sequential requests, and supports full

    Pythonaiohttpasyncasyncio
    View on GitHub↗16,351
  • hyperium/hyperhyperium avatar

    hyperium/hyper

    15,945View on GitHub↗

    Hyper is a low-level networking library designed for building high-performance HTTP clients and servers. It provides a foundational toolkit for creating network services that leverage asynchronous execution and memory-safe data handling, supporting both HTTP/1 and HTTP/2 protocols. The library distinguishes itself through a protocol-agnostic architecture that separates transport logic from HTTP semantics. It utilizes a service-trait abstraction to decouple network logic from the underlying transport, enabling developers to inject custom middleware for request interception and response transfo

    Rusthttphyperrust
    View on GitHub↗15,945
  • wheresrhys/fetch-mockwheresrhys avatar

    wheresrhys/fetch-mock

    1,310View on GitHub↗

    Fetch-mock is a testing utility designed to isolate application code from external network dependencies by intercepting and overriding outgoing traffic. It functions as a network request interceptor that captures calls made via the Fetch API, allowing developers to simulate server responses and verify application behavior without requiring a live backend infrastructure. The library distinguishes itself through a unified interface that provides consistent network interception logic across diverse runtime environments, including browsers, service workers, and server-side platforms. By replacing

    JavaScript
    View on GitHub↗1,310
  • dodyg/practical-aspnetcoredodyg avatar

    dodyg/practical-aspnetcore

    10,382View on GitHub↗

    This project is a comprehensive sample library and implementation guide for ASP.NET Core. It provides a collection of practical examples and projects that demonstrate how to build web applications, RESTful APIs, and high-performance services. The repository focuses on a variety of architectural patterns, including the development of Minimal APIs, contract-first gRPC services, and real-time communication using WebSockets and Server-Sent Events. It includes detailed implementations for user identity and security, such as token-based authentication and CSRF protection. The codebase covers a bro

    C#asp-net-coreaspnet-coreaspnetcore
    View on GitHub↗10,382
  • microsoft/playwright-pythonmicrosoft avatar

    microsoft/playwright-python

    14,279View on GitHub↗

    Playwright for Python is a browser automation framework designed for end-to-end testing, web scraping, and user interaction simulation. It functions as a headless browser controller that enables programmatic navigation, data extraction, and the execution of complex workflows across multiple rendering engines. The framework distinguishes itself through an actionability-aware interaction engine that automatically verifies element readiness before performing actions, significantly reducing test flakiness. It utilizes isolated browser contexts to maintain separate storage and cookies for parallel

    Pythonchromiumfirefoxplaywright
    View on GitHub↗14,279
  • openfeign/feignOpenFeign avatar

    OpenFeign/feign

    9,784View on GitHub↗

    Feign is a declarative Java HTTP client framework that maps method signatures to REST API requests. It functions as an HTTP interface mapper, allowing the creation of type-safe clients by defining service interfaces with annotations to eliminate manual request logic. The framework features a pluggable HTTP transport layer, which decouples request definition from execution by routing network traffic through interchangeable underlying HTTP engines. It provides a comprehensive request management pipeline including interceptors for modifying headers, policy-driven retry logic for failure recover

    Javahttp-clientinterfacejava
    View on GitHub↗9,784
  • psf/requestspsf avatar

    psf/requests

    54,044View on GitHub↗

    Requests is a high-level HTTP client library designed to simplify web communication and API integration. It provides an intuitive, human-readable interface for performing standard network operations, including request execution, connection pooling, and stateful session management. By encapsulating raw network data into structured objects, the library automates the complexities of headers, cookies, and payload transmission. The library distinguishes itself through a modular transport adapter layer that allows for custom protocol handling and extensible authentication hooks. It supports a wide

    Pythonclientcookiesforhumans
    View on GitHub↗54,044
  • moleculerjs/moleculermoleculerjs avatar

    moleculerjs/moleculer

    6,373View on GitHub↗

    Moleculer is a Node.js microservices framework designed for building distributed systems. It functions as a distributed service broker, task orchestrator, and service mesh framework, enabling a decentralized architecture with built-in service discovery and load balancing. The project differentiates itself through a pluggable transport layer supporting protocols such as NATS, Redis, TCP, and Kafka, as well as a dedicated microservices API gateway that maps external HTTP and WebSocket requests to internal service actions. It includes built-in fault tolerance mechanisms, including circuit breake

    JavaScript
    View on GitHub↗6,373
  • oakserver/oakoakserver avatar

    oakserver/oak

    5,408View on GitHub↗

    Oak is a cross-runtime HTTP middleware framework and web server designed to operate across Deno, Node.js, Bun, and Cloudflare Workers. It provides a unified system for building APIs and web servers using a sequential chain of middleware functions and a hierarchical routing engine that maps URL paths to handlers via a nested tree structure. The framework includes a runtime-agnostic serverless adapter that translates diverse cloud provider events into a standard request and response interface. It also features a dedicated WebSocket server implementation for bidirectional real-time communication

    TypeScript
    View on GitHub↗5,408
  • googleapis/google-api-php-clientgoogleapis avatar

    googleapis/google-api-php-client

    9,795View on GitHub↗

    The Google API PHP Client Library is a development kit for interacting with Google Cloud services and APIs. It provides standardized service interfaces to retrieve and manipulate data, serving as a comprehensive SDK for executing network requests across Google cloud platforms. The library features a specialized authentication handler for OAuth 2.0, managing authorization flows, access tokens, and offline access via refresh tokens. It includes a service account authenticator that uses JSON key files or application default credentials for server-to-server communication, as well as mechanisms fo

    PHP
    View on GitHub↗9,795
  • nats-io/nats-servernats-io avatar

    nats-io/nats-server

    20,076View on GitHub↗

    NATS Server is a high-performance, lightweight messaging system designed for cloud-native applications, edge computing, and distributed microservices. It functions as a distributed publish-subscribe broker that routes messages using hierarchical, dot-separated subject strings, enabling decoupled communication between services without requiring centralized broker lookups. The system supports core messaging patterns including asynchronous publish-subscribe, request-reply, and load-balanced queue processing. The platform distinguishes itself through a decentralized architecture that eliminates t

    Gocloudcloud-computingcloud-native
    View on GitHub↗20,076
  • andresriancho/w3afandresriancho avatar

    andresriancho/w3af

    4,850View on GitHub↗

    w3af is a web penetration testing suite and security audit framework designed to identify and exploit vulnerabilities in web applications. It functions as a vulnerability scanner that crawls targets to find injection points and a fuzzer used to discover hidden endpoints and test input validation. The project distinguishes itself by providing an intercepting HTTP proxy for capturing and modifying traffic, combined with a knowledge-base driven exploitation system. It enables the execution of security exploits to gain remote shell access and supports post-exploitation activities, such as routing

    Pythonappseccross-site-scriptingscanner
    View on GitHub↗4,850
  • goravel/goravelgoravel avatar

    goravel/goravel

    4,749View on GitHub↗

    Goravel is a full-featured development scaffold and framework for building web applications, REST APIs, and gRPC services using the Go programming language. It implements a model-view-controller architecture and provides a comprehensive toolkit for high-performance remote procedure call servers and clients. The framework is distinguished by its extensive integrated ecosystem, which includes a fluent object-relational mapper for database management and a dedicated command-line interface toolkit for administrative automation and project scaffolding. It features a driver-based service abstractio

    Goapiframeworkgo
    View on GitHub↗4,749
  • microsoft/cpprestsdkmicrosoft avatar

    microsoft/cpprestsdk

    8,265View on GitHub↗

    The C++ REST SDK is a library for asynchronous HTTP and RESTful communication in native C++ applications. It provides a non-blocking network client for sending requests and receiving responses, a JSON parser for serializing and deserializing data, and a WebSocket client library for real-time, full-duplex communication. The project includes a dedicated OAuth2 authentication client to manage access tokens and authorization flows for secure communication with protected cloud resources. It utilizes a task-based asynchronous model to coordinate background operations and keep application interfaces

    C++asyncasynchronous-taskscloud
    View on GitHub↗8,265
  • graphql-hive/graphql-yogagraphql-hive avatar

    graphql-hive/graphql-yoga

    8,523View on GitHub↗

    Yoga is a GraphQL server framework and runtime-agnostic HTTP handler used to build and deploy GraphQL APIs. It functions as a toolkit for managing schemas and resolvers, providing a spec-compliant environment for hosting APIs across diverse JavaScript runtimes, including Node.js, Deno, Bun, and serverless cloud environments. The project distinguishes itself through its ability to act as an Apollo Federation gateway, composing multiple subgraphs into a single unified supergraph. It also serves as a dedicated subscription server, delivering real-time data streaming via both WebSockets and Serve

    TypeScriptbundenofetch
    View on GitHub↗8,523
  • forwardemail/superagentforwardemail avatar

    forwardemail/superagent

    16,649View on GitHub↗

    Superagent is an isomorphic JavaScript HTTP client for sending network requests and processing responses across both Node.js and web browser environments. It provides a fluent request builder that uses a chainable interface to construct complex network requests with custom headers, query strings, and bodies. The library functions as a runtime-agnostic request adapter, allowing a single codebase to work consistently across different environments. It includes specialized capabilities such as an HTTP/2 client for forcing the HTTP/2 protocol and a Node.js agent for managing Unix socket connection

    JavaScript
    View on GitHub↗16,649
  • apollographql/apollo-iosapollographql avatar

    apollographql/apollo-ios

    4,030View on GitHub↗

    apollo-ios is a GraphQL client library for iOS and Apple platforms that enables type-safe network communication. It transforms GraphQL operations into generated Swift models, ensuring that network responses are validated at compile time to eliminate manual mapping. The library features a normalized cache manager that stores entities in a flat structure to maintain data consistency across different application views. It also optimizes network performance using hash-based persisted queries to reduce payload sizes and supports real-time data streaming via WebSockets or HTTP subscriptions. The p

    Swiftapollo-iosapollographqlgraphql
    View on GitHub↗4,030
  • vectordotdev/vectorvectordotdev avatar

    vectordotdev/vector

    22,071View on GitHub↗

    Vector is a high-performance observability data pipeline designed to collect, transform, and route logs, metrics, and traces across distributed infrastructure. It functions as a modular engine that decouples data ingestion from processing and transmission, utilizing a component-based architecture to connect diverse sources to multiple destinations. The project distinguishes itself through a focus on reliability and flow control. It implements backpressure-aware data movement to prevent data loss during traffic spikes and utilizes disk-backed event buffering to ensure durability during network

    Rusteventsforwarderhacktoberfest
    View on GitHub↗22,071
  • openai/openai-goopenai avatar

    openai/openai-go

    2,974View on GitHub↗

    openai-go is an LLM SDK for Go and a client for interacting with OpenAI services. It provides type-safe bindings to generate text, images, and audio via REST endpoints, enabling the integration of large language models and AI assistant orchestration into Go applications. The library serves as an agent orchestration tool for managing stateful conversation threads and autonomous agents with integrated tool calling and file search. It also functions as an asynchronous batch processing client for monitoring large-scale request groups and fine-tuning jobs, alongside a management SDK for controllin

    Go
    View on GitHub↗2,974