30 open-source projects similar to php-fig/http-message, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Http Message alternative.
Beast is a C++ library for implementing low-level HTTP and WebSocket clients and servers. It functions as an asynchronous networking framework designed to compose non-blocking I/O operations and layered stream stacks for managing concurrent network traffic, specifically utilizing the Boost.Asio asynchronous model. The library provides a comprehensive implementation of the HTTP/1.1 and WebSocket protocols. For HTTP, it includes primitives for parsing and serializing messages with support for chunked transfer encoding, incremental body reading, and request pipelining. Its WebSocket implementati
CodeIgniter is a PHP web framework built on the Model-View-Controller pattern, designed for building full-stack web applications. It provides a lightweight toolkit with minimal configuration, organizing application logic into controllers, models, and views for clean separation of concerns. The framework includes a fluent query builder for constructing SQL statements programmatically, PSR-4 autoloading with namespace mapping, and a service-based dependency injection container for managing shared class instances. The framework distinguishes itself through its comprehensive set of built-in tools
Zend Framework is a comprehensive set of decoupled components for building modular, event-driven web applications. It implements an MVC architecture to separate business logic from the user interface and provides a structured request-handling system through a sequential middleware pipeline. The project features a factory-driven dependency injection container to automate object instantiation and manage class lifecycles. It also includes a comprehensive security suite for verifying user identities and restricting resource access using access control lists and role-based access control adapters.
This project is a software development kit and cluster management tool for PHP. It serves as a full-text search SDK and vector search interface, enabling applications to perform lexical, fuzzy, and semantic searches against indexed data. The library implements a PSR 7 HTTP client to ensure cross-environment compatibility through standardized messaging interfaces. It provides a specialized interface for retrieving embeddings and performing semantic retrieval workflows using vector data. Its capability surface covers a wide range of administrative and operational tasks, including search index
This project establishes a collection of interoperability standards for the PHP ecosystem. It defines common technical specifications to ensure that separate software projects and libraries can work together without compatibility issues. The standards cover a variety of core domains, including specifications for class autoloading through namespace-to-path mapping, shared coding style guides for codebase uniformity, and common component interfaces for services such as logging and caching. It also defines shared specifications for network communication to ensure consistent interactions between
node-fetch is a lightweight HTTP client library that implements the browser-standard Fetch API for Node.js. It provides a promise-based interface for making asynchronous network requests to retrieve or send data from server-side environments. The project specializes in memory-efficient data handling by utilizing request and response streaming. This allows for the incremental processing of large network payloads through native system streams to prevent memory exhaustion. The library covers a broad range of networking capabilities, including the use of custom HTTP agents for DNS and SSL config
Script-Hub is a system for translating proxy rule sets and converting configuration modules between different network proxy environments. It serves as a translator and converter that enables cross-platform compatibility for rewrite rules and script-based logic. The project includes a script interop layer that normalizes header casing and handles execution errors to ensure scripts run consistently across different tools. It also provides a remote configuration manager for importing, updating, and modifying proxy modules and parameters via web URLs. The software covers a range of capabilities
Symfony HttpFoundation is an object-oriented library that models HTTP requests and responses as structured objects, wrapping PHP superglobals into typed parameter bags and providing dedicated objects for headers, cookies, and file uploads. It serves as the foundational layer for building HTTP-based applications in PHP, offering a complete abstraction for reading request data, constructing responses, and managing the full request-response lifecycle. The library distinguishes itself through composable request matchers that check incoming requests against conditions like IP, method, host, or pat
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,
Node.js is an open-source, cross-platform JavaScript runtime environment built on the V8 engine, designed for executing JavaScript code outside a web browser. It operates as a server-side JavaScript platform with an event-driven, non-blocking I/O architecture that enables building scalable network applications and web servers. The runtime integrates the CommonJS module system for synchronous module loading and the npm ecosystem for sharing and reusing packages. The platform provides comprehensive capabilities for web server development, including creating HTTP and HTTPS servers, managing HTTP
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
atproto is a decentralized social networking protocol implementation and a schema-driven API framework. It provides the networking and data standards required to build interoperable social networks where users control their own identity and data through a personal data server specification. The project distinguishes itself through a DID-based identity system for managing cryptographic keys and verifiable profiles, alongside a lexicon-based protocol definition that uses versioned schemas to ensure consistency across network services. It utilizes Merkle Search Trees for verifiable data storage,
Gixy is a static configuration analyzer and security auditor for Nginx. It functions as an infrastructure-as-code security scanner and web server configuration linter designed to identify vulnerabilities and misconfigurations in server definitions before deployment. The tool focuses on detecting high-risk security flaws, including host header spoofing, server-side request forgery, and path traversal. It specifically audits Nginx configurations for risks such as HTTP splitting, multiline header issues, and unauthorized third-party access resulting from incorrect Referer or Origin header patter
This project is a JavaScript fetch polyfill and HTTP client library. It implements the Fetch API in environments that lack native browser support for web requests, providing a promise-based network wrapper for executing asynchronous HTTP calls and managing responses. The library ensures a consistent interface across different JavaScript runtimes by mapping raw network data into standardized request and response objects. It utilizes the XMLHttpRequest object to perform network operations in environments where a native fetch implementation is unavailable. The tool covers HTTP request managemen
oha is a command line HTTP load testing and benchmarking utility. It functions as a latency analysis tool and performance monitor, sending high volumes of requests to web servers to measure stability and identify performance bottlenecks. The tool features a terminal user interface that displays real-time latency statistics and request animations during active tests. It includes a mechanism to correct for coordinated omission, ensuring that response time percentiles and latency distributions are reported accurately. Its capabilities cover HTTP load generation, traffic simulation via randomize
Naivechain is an educational blockchain implementation designed to demonstrate the fundamentals of distributed ledgers. It functions as a proof-of-work blockchain where nodes solve computational puzzles to validate new blocks and secure the network. The system operates as a peer-to-peer network using WebSockets to propagate transactions and synchronize state across nodes. It includes an asymmetric key wallet for generating public and private key pairs, enabling users to sign transactions and manage digital identities. Node administration and ledger data retrieval are handled through an HTTP
FastStream is an asynchronous Python framework designed for building event-driven microservices. It provides a unified abstraction layer for interacting with various message brokers, enabling developers to manage event production and consumption through a consistent interface while maintaining access to native provider-specific features. The framework centers on a decorator-based routing model that binds application logic directly to broker topics, supported by a built-in dependency injection container that resolves resources at runtime. The framework distinguishes itself through its deep int
HAProxy is a high-performance TCP and HTTP proxy that distributes traffic across multiple backend servers to ensure availability and fault tolerance for critical services. It operates in either TCP or HTTP mode, with an event-driven, single-threaded reactor that handles tens of thousands of connections without context switching, and supports kernel-level data transfer to minimize memory usage and latency. What distinguishes HAProxy is its configuration-file-first design, where all load-balancing rules and runtime behavior are defined in a declarative text file parsed at startup. It embeds a L
nghttp2 is a suite of low-level C libraries and tools designed for implementing the HTTP/2 protocol. It provides a memory-efficient implementation of the protocol's core logic, including framing, stream multiplexing, and flow control. The project includes a dedicated library for HPACK header compression and decompression to reduce network bandwidth. It also provides a toolset for analyzing network traffic and benchmarking server performance, including throughput and latency measurements. Its broader capabilities cover protocol implementation and traffic management, including ALPN connection
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
Rest-assured is a Java-based REST API testing framework and HTTP client library designed for automating web service tests. It provides a fluent domain-specific language and assertion library to send HTTP requests and validate response metadata, including status codes, headers, cookies, and bodies. The framework is distinguished by a method-chaining DSL that creates readable specifications for API interactions. It features a filter-based request interception pipeline, object-mapping serialization for converting Java objects to JSON or XML, and a path-based parsing system to isolate specific fi
Hotel is a reverse proxy and process manager for local development. It maps custom local domains and subdomains to specific ports or remote servers, removing the need for manual host file modifications. The project provides a web interface to manage the lifecycle of background processes and application servers. It includes on-demand process activation, which starts and stops servers automatically when accessed via a browser to conserve system resources. The tool generates self-signed SSL certificates to enable encrypted HTTPS connections for local environments. It also supports routing traff
Rack is a minimal interface that standardizes how Ruby web servers and frameworks communicate. It provides a web application interface and a web server interface, enabling Ruby applications to run across different server implementations by using a common environment hash and a standardized response tuple. The project implements a modular HTTP middleware pipeline, allowing requests and responses to be intercepted and modified through a sequence of callable objects. It supports low-level connection management, including TCP connection hijacking for custom protocol handling, protocol upgrade sig
This project is a comprehensive library of reference implementations and patterns for building web applications using the Go Fiber framework. It provides curated templates and implementation guides for creating REST APIs, web servers, and structured backend services. The repository serves as a practical resource for applying architectural patterns, including Clean and Hexagonal architectures, as well as port-and-adapter decoupling. It offers detailed examples for integrating common web features such as OAuth2 authentication, JWT verification, WebSockets for real-time communication, and server
The Cloudflare Workers Rust SDK is a toolchain and framework for building high-performance serverless functions using Rust. It compiles code into WebAssembly modules that execute within a sandboxed host environment at the edge. The project provides a typed remote procedure call system for invoking functions across different worker instances and utilizes procedural macros for mapping these distributed interfaces. It uses trait-based bindings and standardized wrappers to provide type-safe access to platform services and web-standard request and response objects. The SDK covers a broad range of
This project is a high-performance reverse proxy designed to expose local services to the internet. It provides a comprehensive suite of tools for managing network traffic, including support for TCP and UDP stream multiplexing, connection pooling, and load balancing across proxy instances. The system facilitates secure communication through TLS encryption, data compression, and multiple authentication methods such as OpenID Connect, shared tokens, and basic password protection. The software offers granular control over HTTP traffic, enabling users to route requests based on subdomains or URL
This project is a terminal-based HTTP client designed for interacting with web services, debugging APIs, and automating network requests. It provides a specialized command-line interface that simplifies the construction of complex HTTP exchanges, allowing users to test and inspect web services directly from the shell. The tool distinguishes itself through a declarative syntax engine that translates shorthand command-line tokens into fully formed HTTP requests, including headers, parameters, and body payloads. It features a modular, plugin-based architecture that enables users to extend core f
Proxyman is a cross-platform HTTP debugging proxy that captures, inspects, and modifies HTTP, HTTPS, and WebSocket traffic. It functions as a man-in-the-middle proxy, decrypting SSL/TLS traffic to allow real-time inspection and modification of encrypted requests and responses. The tool is designed for debugging web and mobile applications, with capabilities for API mocking and simulation, scriptable traffic modification, and team collaboration on network logs. What distinguishes Proxyman is its deep integration with mobile and cross-platform development workflows. It provides automated certif
This is a Go client library and protocol implementation for interacting with message brokers using the AMQP 0.9.1 standard. It serves as an asynchronous messaging toolkit and message queue client for implementing producer and consumer patterns. The library provides a programmatic interface for managing the full message lifecycle, including publishing, consumption, and delivery acknowledgments. It supports reliable delivery mechanisms such as publishing confirmations and atomic transactions. The project covers the administration of routing topologies through the declaration and binding of que
Lumen is a PHP micro-framework and REST API framework designed for building high-performance web applications and lightweight services. It provides a streamlined environment for developing independent, small-scale web services that handle specific business logic. The framework is focused on microservices development and the creation of stateless web endpoints. It provides a minimal architecture to reduce operational overhead when constructing high-performance backend services and rapid web API prototypes. The system incorporates request dispatching and filtering through middleware, utilizing