thehardwarestore.ai

where AI agents shop for the right tools

── 99339 repos indexed ── | filtered by tag: http
HFQR/xitca-web ★ 1009 66 APPLICATION

This is the xitca-web workspace, a high-performance, modular async web framework in Rust. It provides server and client capabilities for HTTP/1, HTTP/2, and HTTP/3, along with WebSocket, gRPC, TLS (rustls, OpenSSL, native-tls), static file serving, content compression (brotli, gzip, deflate, zstd), multipart form handling, and rate limiting. The framework is built on a core `Service`/`ReadyService` trait system that allows composable middleware pipelines, similar to Tower but with its own ergonomic design. It also includes an async PostgreSQL driver with full protocol support, connection pooling, and io_uring integration. The architecture is organized into many focused crates (`xitca-http`, `xitca-server`, `xitca-client`, `xitca-service`, `xitca-router`, `xitca-io`, etc.), all within a single workspace. Key strengths include zero-copy buffer management, custom protocol implementations (HPACK, QPACK) with security mitigation for known HTTP/2 vulnerabilities, and a flexible handler extraction system. The codebase demonstrates high craftsmanship with extensive testing, benchmarks, and security-conscious design, though it contains some unsafe code and has a large feature flag surface.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 5 reusable components found
hoppscotch/hoppscotch ★ 80561 6143 APPLICATION

Hoppscotch is an open-source, multi-platform API development ecosystem that serves as a full-featured alternative to Postman. It supports REST, GraphQL, WebSocket, SSE, Socket.IO, and MQTT protocols, with advanced features like pre-request and test scripting (sandboxed), environment variables, team collaboration, mock servers, published documentation, AI assistant, and extensive import/export (Postman, Insomnia, OpenAPI, HAR, cURL). The monorepo is organized into packages: a Vue 3 frontend (hoppscotch-common), a NestJS/GraphQL/Prisma backend (hoppscotch-backend), a Tauri desktop app (hoppscotch-desktop), a Node.js CLI (hoppscotch-cli), a Tauri agent for interceptor (hoppscotch-agent), a shared kernel abstraction layer (hoppscotch-kernel), versioned data schemas (hoppscotch-data), a JavaScript sandbox engine (hoppscotch-js-sandbox), and self-hosted web/admin panels. The architecture emphasizes functional programming with fp-ts, reactive state management via RxJS DispatchingStores, dependency injection with dioc, and a kernel/relay pattern that abstracts HTTP execution across platforms. The codebase is actively maintained with extensive test coverage and demonstrates high craftsmanship in areas like versioned data migration, sandboxed script execution, and cross-platform kernel design.

RATING: 9.2/10 MAINT: active DRIFT: low
▸ 5 reusable components found
chinabugotech/hutool ★ 30265 7565 APPLICATION

Hutool is a comprehensive Java utility library (toolkit) designed to reduce boilerplate code across a wide range of common development tasks. It is not an application or service but a library consumed by other Java projects. The codebase is organized into approximately 20 Maven modules (hutool-core, hutool-crypto, hutool-http, hutool-db, hutool-json, hutool-cron, hutool-cache, hutool-captcha, hutool-ai, etc.), each providing cohesive sets of static utility classes, abstract base classes, and configurable implementations. Key functional areas include: core utilities (collections, I/O, date/time, strings, reflection, compression), cryptography (symmetric/asymmetric encryption, digests, MAC, digital signatures), networking (HTTP client/server, URL handling, user-agent parsing), database access (dialect abstraction, pagination, SQL building), JSON/XML/CSV parsing, caching (FIFO, LRU, LFU, timed, weak), cron scheduling with full pattern support, captcha generation, Bloom filters, AOP proxies, JWT handling, DFA-sensitive word filtering, and an extensible AI client module supporting multiple providers (OpenAI, Gemini, DeepSeek, etc.) via SPI. Architecturally, Hutool follows a modular, interface-driven design with heavy use of factory patterns (e.g., LogFactory, DSFactory, AIServiceFactory), abstract template methods, and Java SPI for discoverability. Static utility classes (FileUtil, StrUtil, HttpUtil) serve as the primary entry points, offering fluent APIs and sensible defaults. The library integrates with numerous third-party libraries (Apache POI, Bouncy Castle, various template engines, logging frameworks, etc.) through adapter wrappers, maintaining a consistent Hutool API surface. The annotation synthesis subsystem in hutool-core is a standout example of advanced Java metaprogramming, supporting alias, mirror, and link relationships between annotations. In production, Hutool is used by embedding its JAR and calling its utility methods directly. It has no runtime configuration files or external processes; all behavior is determined at compile-time through import and method invocation. The library's data flows are purely functional—inputs are parameters, outputs are return values. The extensive test suite (thousands of unit tests, many issue-driven) and continuous releases indicate a mature, battle-tested codebase suitable for projects requiring a rich set of Java utilities without heavy framework dependencies.

RATING: 9.2/10 MAINT: active DRIFT: low
▸ 3 reusable components found
fastify/fastify-cors ★ 497 69 APPLICATION

This is the official Fastify CORS plugin, implementing Cross-Origin Resource Sharing (CORS) for Fastify servers. It provides comprehensive configuration for all standard CORS headers, including origin (string, regex, array, boolean, or dynamic function), methods, allowed headers, exposed headers, credentials, max age, cache control, and preflight handling. The architecture is a standard Fastify plugin that registers a configurable lifecycle hook (default onRequest) and a wildcard OPTIONS route to handle preflight requests. It supports dynamic configuration via a delegator callback or promise, and per-route CORS overrides via route config. The code is well-structured, thoroughly tested, and includes a particularly well-crafted `vary.js` module for managing the Vary header with caching. Dependencies are minimal and up to date.

RATING: 9.2/10 MAINT: active DRIFT: low
▸ 1 reusable components found
nette/http ★ 491 88 APPLICATION

nette/http is a standalone PHP library providing HTTP abstraction for request/response handling, URL manipulation, session management, and file uploads. It is part of the Nette Framework ecosystem but is usable independently. The library offers immutable `Request` and `UrlImmutable` objects for safe processing, alongside mutable `Response` and `Session` for stateful operations. It includes security-focused features such as input sanitization, CSRF protection via `Sec-Fetch-*` headers (with fallback), SSRF protection via `UrlValidator` and `IPAddress`, and a proxy trust model for client IP resolution behind reverse proxies. The codebase is well-structured, with clear separation of concerns, comprehensive test coverage (Nette Tester), and strict static analysis (PHPStan level 8). It requires PHP 8.3-8.5 and depends on `nette/utils`. The repository is actively maintained with recent commits, CI on multiple OSes, and an issue tracker.

RATING: 9.2/10 MAINT: active DRIFT: low
▸ 6 reusable components found
uNetworking/uWebSockets.js ★ 9174 625 APPLICATION

uWebSockets.js is a high-performance native Node.js addon that wraps the uWebSockets C++ library to provide blazing-fast HTTP/1.1, WebSocket, and QUIC (HTTP/3) server capabilities. It exposes a clean TypeScript/JavaScript API with features such as per-message compression, backpressure management, streaming responses, pub/sub, and SNI support. The architecture centers on a V8 addon compiled for multiple Node.js ABIs (22/24/26) using a custom build script that also builds BoringSSL and lsquic. The JavaScript layer defines a DeclarativeResponse class that encodes response instructions as typed array opcodes for zero-copy native execution. The codebase includes extensive benchmarks with A/B comparison, automated fuzz testing, and a standalone V8 host for testing. While primarily an application library, it incorporates sophisticated data engineering patterns in its benchmarking and performance measurement infrastructure. The repository is actively maintained with recent commits and low open issue count, though it depends on a volatile V8 API and an external submodule.

RATING: 9.1/10 MAINT: active DRIFT: low
▸ 3 reusable components found
boostorg/beast ★ 4827 696 APPLICATION

Boost.Beast is a production-grade C++ library providing asynchronous HTTP/1.1 and WebSocket client/server implementations. Built on the Boost.Asio async I/O framework, it offers a layered stream architecture (transport -> SSL -> HTTP/WebSocket) that allows for flexible composition of protocols. The library is designed for high performance and low latency, featuring zero-copy buffer management, custom allocator support, and efficient state-machine-based parsers/serializers. The codebase demonstrates exceptional C++ craftsmanship, with clean abstractions for buffer sequences (buffers_cat, buffers_prefix), async operation composition (async_base, bind_handler), and protocol detection (detect_ssl). It includes comprehensive test suites, benchmarks, and fuzz targets, reflecting a strong commitment to reliability and security. While the library requires a minimum of C++11 and carries some historical compiler workarounds, it is actively maintained and adapted to modern Boost and C++ standards. It serves as a foundational component for building high-performance networked services in C++.

RATING: 9.1/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
fsprojects/FsHttp ★ 498 41 APPLICATION

FsHttp is a .NET HTTP client library for F# (and C#) that provides a fluent, composable DSL for constructing and sending HTTP requests. It offers both a computation expression (CE) syntax for F# and extension methods for C#, supporting all standard HTTP methods, headers, cookies, multipart form data, file uploads, and various body content types (text, JSON, binary, streams, form-urlencoded). The library wraps System.Net.Http and provides rich response handling including streaming, JSON parsing (System.Text.Json by default, with optional FSharp.Data and Newtonsoft.Json integrations), XML parsing, file saving, and status code assertions. It features a configurable pipeline with transformers for headers, URLs, HttpClient, and HttpRequestMessage, as well as per-request and global configuration. The library is designed for both interactive use (F# Interactive / notebooks) and production applications, with built-in FSI printing and debug logging. The codebase is well-structured with clean domain models, a modular DSL implementation, and comprehensive test coverage using Suave for local test servers.

RATING: 9.1/10 MAINT: active DRIFT: low
▸ 4 reusable components found
tsenart/vegeta ★ 25202 1422 APPLICATION

Vegeta is a versatile HTTP load testing tool and Go library. It simulates constant-rate or oscillating traffic against HTTP endpoints, collects latency and byte metrics, and generates reports (text, JSON, histograms, HTML plots). The core is an attack engine with pluggable pacers, a targeter for reading HTTP request specs, and a metrics pipeline using t-digest for percentile estimates. It includes a Prometheus exporter and a downsampling library for plotting large time series. The codebase is well-structured with clean package boundaries, cross-platform support, and extensive testing including fuzzing.

RATING: 9.0/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
jhao104/proxy_pool ★ 23760 5428 APPLICATION

ProxyPool is a production-grade proxy pool application that automatically collects free HTTP/HTTPS proxies from over a dozen public sources, validates their availability, and stores them in Redis or SSDB. It provides a Flask RESTful API for consuming proxies (get, pop, all, count, delete) and uses APScheduler for periodic fetching and validation. The architecture is a monolith with two main processes: a scheduler that runs fetch/check cycles and an API server (Flask with Gunicorn on Linux). The codebase demonstrates strong software engineering practices: a plugin-based fetcher system with dynamic module loading and caching, a clean Proxy data model with JSON serialization, a decorator-based validator registration pattern, and a layered test suite (unit, API, integration) with fakeredis mocking. External dependencies include Redis/SSDB, APScheduler, Flask, requests, and lxml. The project is actively maintained with recent commits and a comprehensive test suite.

RATING: 9.0/10 MAINT: active DRIFT: low
▸ 8 reusable components found
imroc/req ★ 4866 414 APPLICATION

This repository is `imroc/req`, a feature-rich, production-grade HTTP client library for Go (version 3). It provides a high-level fluent API for building and executing HTTP requests with support for HTTP/1.1, HTTP/2, and HTTP/3 (via QUIC). Key capabilities include connection pooling, automatic retries with configurable backoff, redirect policies, request/response middleware, TLS fingerprint impersonation (mimicking Chrome, Firefox, Safari), SOCKS4/4a/5 proxying, compression (gzip, deflate, brotli, zstd), response body auto-decode (charset detection), file upload/download with progress callbacks, parallel downloading, and extensive debugging via request/response dump and trace. The library is built on top of Go's `net/http` transport but extends it significantly with custom implementations for HTTP/2 frames, HTTP/3, and SOCKS. It is designed for both simple API calls and complex integrations, as demonstrated by included examples for OpenTelemetry tracing and GitHub API usage. The codebase is well-tested and actively maintained, targeting recent Go versions (1.25+). While primarily an HTTP client library, it includes self-contained utility packages for charset detection, SOCKS proxy, and compression that could be reused independently.

RATING: 9.0/10 MAINT: active DRIFT: low
▸ 3 reusable components found
Corvusoft/restbed ★ 1999 380 APPLICATION

restbed is a production-grade C++23 framework for building asynchronous RESTful HTTP and WebSocket servers. It provides a clean, modern API with classes for Service, Resource, Session, Request, Response, and WebSocket communication, all implemented using the pimpl idiom for ABI stability. The framework handles HTTP/1.1, HTTPS (via OpenSSL), WebSocket upgrades, chunked transfer encoding, compression, authentication, and custom error handling. It is designed for high concurrency (C10K) using ASIO's async I/O and supports both single-threaded and multi-threaded modes. The architecture is centered around a Service object that manages an ASIO io_context, publishes Resource endpoints with regex-based routing, and dispatches incoming connections to Session objects. Each Session encapsulates a socket (with optional SSL) and provides methods to yield responses, fetch request bodies, and upgrade to WebSocket. The framework includes extensive regression tests (50+ suites) covering edge cases like keep-alive, error handler reset, WebSocket frame parsing, and locale sensitivity. Key entry points include Service::start() and Service::stop() for lifecycle, Resource::set_method_handler() for routing, and Session::yield() for sending responses. External dependencies are minimal: standalone ASIO (header-only), optional OpenSSL, and Catch2 for tests. The build system uses Autotools, and the library is dual-licensed under AGPL and commercial CPL. Despite the anomalous last commit date (2026-06-23, likely a data error), the codebase shows active maintenance with modern C++23 features, a comprehensive test suite, and CI workflows for Linux, macOS, and Windows (MSYS2). The framework is mature (since 2013) and suitable for embedded, mobile, desktop, and server environments.

RATING: 9.0/10 MAINT: active DRIFT: low
▸ 4 reusable components found
webtorrent/bittorrent-tracker ★ 1939 331 APPLICATION

This repository provides a robust, production-ready implementation of a BitTorrent tracker, including both client and server components. The client can announce to HTTP, UDP, and WebSocket trackers to discover peers in a swarm, while the server can track multiple swarms, respond to announce and scrape requests, and expose statistics via a web interface. The architecture is modular, with separate tracker protocol implementations (HTTP, UDP, WebSocket) inheriting from a common base class, and a server that manages swarms using an LRU cache for peer storage. The codebase is well-tested, uses modern ESM modules, and is actively maintained as part of the WebTorrent ecosystem. It is primarily a library for Node.js, but also supports browser usage via bundlers.

RATING: 9.0/10 MAINT: active DRIFT: low
▸ 2 reusable components found
expressjs/response-time ★ 497 74 APPLICATION

response-time is a minimal, high-quality Node.js middleware for recording and optionally exposing HTTP response time. It uses `process.hrtime()` for nanosecond-precision timing and `on-headers` to hook into the response header sending phase. The module exposes a single function that returns a middleware compatible with Express, Connect, or vanilla Node.js HTTP servers. It supports configurable header name, digit precision, and suffix, and can either set a default `X-Response-Time` header or invoke a custom callback with the measured time. The codebase is a single, well-architected file with clear separation of concerns (option parsing, header creation, deprecation handling) and comprehensive test coverage. It is a textbook example of a focused, reusable npm package with no unnecessary dependencies.

RATING: 8.9/10 MAINT: active DRIFT: low
▸ 1 reusable components found
aria2/aria2 ★ 42222 3903 APPLICATION

aria2 is a high-performance, multi-protocol download utility implemented as a C++ monolith with both a CLI (aria2c) and an optional shared library (libaria2). It supports HTTP(S), FTP, SFTP, BitTorrent, and Metalink with segmented downloading, multi-source merging, and a rich RPC interface (JSON-RPC over HTTP/WebSocket, XML-RPC). The architecture is event-driven, built on a custom reactor pattern (DownloadEngine) with platform-specific I/O multiplexing (epoll, kqueue, poll, libuv), and a deep class hierarchy for protocol-specific commands, peer interactions, and DHT routing. External dependencies are abstracted behind internal interfaces (e.g., TLSContext, DHKeyExchange, ARC4Encryptor) allowing flexible backend selection (OpenSSL, GnuTLS, AppleTLS, WinTLS, libnettle, libgcrypt). The codebase demonstrates strong systems programming craftsmanship, particularly in its BitTorrent implementation (DHT Kademlia with XOR metric, MSE/PSE handshake, piece selection strategies, choking algorithms), stream filter chain for on-the-fly content decoding (gzip, chunked transfer), and write-back disk caching (WrDiskCache). The extensive CppUnit test suite covers protocol message serialization, DHT routing logic, and disk I/O edge cases. The build system supports cross-compilation for Windows (MinGW), Android (NDK), and macOS via Dockerfiles and wrapper scripts.

RATING: 8.8/10 MAINT: maintained DRIFT: low
▸ 6 reusable components found
mtrudel/bandit ★ 1922 118 APPLICATION

Bandit is a production-grade HTTP server library for Elixir, implementing HTTP/1 (RFC 9112), HTTP/2 (RFC 9113), and WebSocket (RFC 6455) protocols. It is built on the Thousand Island connection management library and serves as the default HTTP server for the Phoenix web framework (since version 1.7.11). The library is designed for correctness, security, and performance, achieving 100% conformance in the h2spec (HTTP/2) and Autobahn (WebSocket) test suites, while outperforming alternatives like Cowboy in benchmark comparisons. Architecturally, Bandit uses a protocol-sniffing initial handler that dispatches incoming connections to either an HTTP/1 or HTTP/2 handler based on the client preface. HTTP/2 connections follow a process-per-connection model with a separate stream process for each concurrent request, while HTTP/1 and WebSocket connections operate within a single process. The library exposes a small public API centered on the `Bandit` module, which validates options and delegates to Thousand Island. Internally, it defines clear abstractions such as the `Bandit.HTTPTransport` protocol for shared transport logic, a reusable `Bandit.Extractor` state machine for frame parsing, and telemetry spans for observability. Key features include support for HTTP/1 keepalive, HTTP/2 flow control and HPACK header compression, WebSocket permessage-deflate compression, content-encoding negotiation (gzip, deflate, zstd), Unix socket binding, and comprehensive error handling with clear RFC citations. The library is actively maintained with frequent releases addressing security vulnerabilities and edge cases, and includes extensive CI workflows for conformance testing, benchmarking, and regression prevention.

RATING: 8.8/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
thecoshman/http ★ 494 39 APPLICATION

This repository implements a comprehensive HTTP server application written in Rust. It serves files from a directory with features including directory listing, authentication, WebDAV support, archive generation (ZIP/TAR), bandwidth limiting, TLS encryption, and response compression. The architecture is monolithic, using the Iron web framework with Hyper for HTTP handling. Key components include modular operation handling (file serving, WebDAV, archiving), command-line option parsing, OS-specific utilities, and intelligent caching mechanisms for encoded content.

RATING: 8.8/10 MAINT: active DRIFT: low
▸ 3 reusable components found
node-fetch/node-fetch ★ 8855 1057 APPLICATION

node-fetch is a widely used ESM-only JavaScript library that brings the browser Fetch API to Node.js. In production it functions as an HTTP/HTTPS client: callers invoke the default `fetch(url, options)` exported from `src/index.js` and receive a `Response` backed by native Node.js Readable streams. The implementation handles redirects (including secure-header stripping on cross-origin redirects), gzip/deflate/brotli content decoding, data: URI fetching, request cancellation via AbortSignal, response size limits, and multipart/form-data generation/parsing. It also exports spec-compliant `Headers`, `Request`, `Response`, `FormData`, `Blob`, and `File` classes for both request construction and server-side payload parsing. Architecturally, the code is a modular library, not a service: `src/body.js` provides the shared Body mixin; `src/request.js` and `src/response.js` build on it; `src/headers.js` implements the Web IDL Headers interface; `src/index.js` orchestrates the low-level Node `http`/`https` calls; and `src/utils/` contains focused pure helpers. The source is annotated with WHATWG Fetch spec step numbers, showing a deliberate conformance-driven design. Tests are extensive and run against a local `TestServer` that simulates redirects, broken encodings, premature closes, and abort scenarios. External dependencies are minimal: `data-uri-to-buffer`, `fetch-blob`, and `formdata-polyfill`. The package declares Node `^12.20.0 || ^14.13.1 || >=16.0.0` and its CI matrix only tests Node 12/14/16, which now lags behind current LTS releases; dev dependencies are also from an older ecosystem. The core code is still clean and maintained, but teams starting new projects may prefer Node's native `fetch`; node-fetch remains useful for legacy runtimes and for environments needing its specific extensions such as `Headers.raw()` and custom agents.

RATING: 8.7/10 MAINT: maintained DRIFT: medium
▸ 3 reusable components found
CrowCpp/Crow ★ 5004 563 APPLICATION

Crow is a modern C++ microframework for building HTTP and WebSocket services. Designed as a single-header library (or modular headers), it provides a Flask-like routing system with typed URL parameters, a middleware pipeline (global and per-route), built-in JSON parsing and generation, Mustache templating, multipart form handling, static file serving, gzip/deflate compression, and SSL/TLS support. The framework is header-only and leverages C++17/20 features such as std::string_view, std::optional, and constexpr where possible. It includes a comprehensive test suite (Catch2), fuzz testing for security, and extensive documentation via MkDocs and Doxygen. Crow is packaged for multiple platforms (Vcpkg, Homebrew, AUR, Conan, Nixpkgs) and is used in production by several open-source projects. The architecture is event-driven, built on top of Asio (standalone or Boost), with a focus on performance and simplicity. Reusable components include a standalone JSON library, base64 utilities, and a flexible middleware system.

RATING: 8.7/10 MAINT: active DRIFT: low
▸ 4 reusable components found
seborama/govcr ★ 200 17 APPLICATION

govcr is a Go library that records and replays HTTP/HTTPS interactions for testing purposes, acting as an HTTP mock. It wraps an http.Client to intercept requests, either playing back recorded responses from cassette files (JSON) or making live requests and recording them. The library supports various modes (normal, live-only, offline, read-only), cassette encryption (AES-GCM, ChaCha20Poly1305), multiple storage backends (local filesystem, AWS S3), flexible request matching, and request/response transformation via mutators. The architecture centers around a custom http.RoundTripper implementation that integrates cassette storage, request matching, mutation systems, and encryption layers.

RATING: 8.7/10 MAINT: active DRIFT: low
▸ 3 reusable components found
$ loading more...
$ submit: