awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
jnunemaker avatar

jnunemaker/httparty

0
View on GitHub↗
5,894 stars·966 forks·Ruby·MIT·15 views

Httparty

HTTParty is a Ruby HTTP client library designed for building standardized API clients. It abstracts low-level network primitives into a high-level interface, allowing developers to encapsulate base URIs and request configurations within classes to maintain consistent interactions with remote web services.

The library automates the transformation of raw network response data into native Ruby structures by using a registry-based system that parses content based on response headers. It also provides specialized mechanisms for sending multipart form data and streaming large payloads to maintain memory efficiency during file transfers.

The project covers a broad range of networking capabilities, including the execution of standard HTTP operations, JSON payload transmission, and the management of secure TLS connections. It includes tools for request authentication, response decompression, and network traffic logging for debugging purposes.

The library also provides a command-line interface for querying web services and viewing response data as structured objects.

Features

  • Custom API Client Development - Provides tools and patterns for building standardized programmatic interfaces for specific remote services.
  • HTTP Client Libraries - Provides a comprehensive Ruby library for performing HTTP requests and managing complex network interactions.
  • Python Data Class Declarations - Allows defining base URIs and request defaults within Ruby classes to encapsulate service-specific settings.
  • REST API Integrations - Provides integration logic for communicating with remote services via RESTful HTTP endpoints.
  • REST API Clients - Acts as a client-side implementation for interacting with RESTful services using standard HTTP methods.
  • Response Body Parsing - Automatically converts network response payloads into structured native Ruby formats like JSON and XML.
  • HTTP Client Wrappers - Simplifies low-level network primitives into a high-level interface for easier request dispatching and response management.
  • HTTP Request Execution - Retrieves data from remote web services by sending standard HTTP requests and inspecting status codes.
  • Network Primitives - Converts low-level network primitives into a high-level declarative interface for simplified request dispatching.
  • Response Parsers - Utilizes a registry-based system to extract and transform body and headers from network responses.
  • Standard Web Authentication Schemes - Implements standard HTTP authentication methods such as Basic and Digest for verifying user identities.
  • Request Authentications - Supports verifying identity using standard security schemes and custom credentials during HTTP request transmission.
  • Declarative Client Configurations - Provides a declarative way to encapsulate base URIs and default settings within classes for consistent service interaction.
  • Declarative API Client Configurations - Defines base URIs and default headers within classes to ensure consistent communication patterns.
  • Automatic Protocol Transformation - Automatically triggers decompression and content-type transformation based on response metadata without manual intervention.
  • Streaming Transfers - Transfers large files as streams for incremental processing to prevent memory exhaustion.
  • Response Decompression - Detects compression encoding in headers and decodes the response body automatically.
  • Large File Uploads - Transfers large files over HTTP using streaming and multipart encoding to maintain memory efficiency.
  • Multipart Form Uploads - Provides capabilities for transmitting files and binary data using the HTTP multipart/form-data encoding standard.
  • Stream-Based Payload Handling - Transfers large data chunks during network operations to maintain memory efficiency by avoiding loading entire files into RAM.
  • JSON Payload Transmission - Serializes objects into JSON format and applies correct content-type headers automatically for network requests.
  • Registry-Based Parsers - Matches response headers against a registry of format handlers to automatically transform raw data into native structures.
  • SSL/TLS Connection Security - Implements secure transport layers to encrypt data and validate certificates between clients and servers.
  • Request Interception Middleware - Hooks into the request-response pipeline to enable auditing, logging, and diagnostic monitoring of network traffic.
  • Network Traffic Logging - Records request and response metadata to files or streams for debugging and auditing service interactions.
  • Client Libraries - Ruby library for making HTTP requests with a simple interface.
  • HTTP Clients - User-friendly library for HTTP requests.

Star history

Star history chart for jnunemaker/httpartyStar history chart for jnunemaker/httparty

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Projects sharing features with Httparty

These projects share indexed features with Httparty. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • rest-client/rest-clientrest-client avatar

    rest-client/rest-client

    5,215View on GitHub↗

    This is a Ruby HTTP client designed for REST API integration, resource modeling, and automated network communication. It provides a set of tools for managing headers, cookies, and SSL configurations, along with a dedicated command-line interface for executing one-off HTTP commands and managing interactive API testing sessions. The project differentiates itself through its resource modeling capabilities, which allow for the definition of persistent base URLs and credentials to construct nested subresource endpoints. It also features a multipart request handler that detects MIME types to upload

    Ruby
    View on GitHub↗5,215
  • go-resty/restygo-resty avatar

    go-resty/resty

    11,704View on GitHub↗

    Resty is a high-level HTTP client library for Go designed for consuming REST services. It provides a streamlined interface for executing network requests, managing server-sent event streams, and automatically mapping JSON and XML responses into data structures. The library includes built-in mechanisms for service resilience and traffic management, such as circuit breakers to prevent cascading failures, token-bucket rate limiting, and automated request retries with exponential backoff. It also features client-side load balancing to distribute outgoing traffic across multiple base URLs and requ

    Gobackoffcircuit-breakercurl-command
    View on GitHub↗11,704
  • tmenier/flurltmenier avatar

    tmenier/Flurl

    4,403View on GitHub↗

    Flurl is a .NET fluent URL builder and HTTP client wrapper designed for constructing complex web addresses and sending requests with a chainable interface. It functions as a URL manipulation library and an HTTP mocking framework to facilitate network interaction and testing. The project distinguishes itself through a fluent interface that allows for the incremental construction of paths, query parameters, and fragments. It provides a dedicated mocking system to intercept outgoing network traffic and return predefined responses, enabling isolated unit testing without a live server. Its broade

    C#c-sharpdotnethttp
    View on GitHub↗4,403
  • kittinunf/fuelkittinunf avatar

    kittinunf/fuel

    4,652View on GitHub↗

    Fuel is a Kotlin HTTP client library for Android and Kotlin applications that handles both synchronous and asynchronous web requests. It functions as a network wrapper that supports executing calls via suspending functions in coroutines, reactive streams, and traditional callbacks. The library features built-in integration for Android LiveData to bind network responses directly to observable state holders for user interface updates. It also includes a JSON serialization client that utilizes customizable mappers to convert raw HTTP response bodies into structured data objects. Capability area

    Kotlinandroidhttp-clientkotlin
    View on GitHub↗4,652
Compare all 30 related projects→

Frequently asked questions

What does jnunemaker/httparty do?

HTTParty is a Ruby HTTP client library designed for building standardized API clients. It abstracts low-level network primitives into a high-level interface, allowing developers to encapsulate base URIs and request configurations within classes to maintain consistent interactions with remote web services.

What are the main features of jnunemaker/httparty?

The main features of jnunemaker/httparty are: Custom API Client Development, HTTP Client Libraries, Python Data Class Declarations, REST API Integrations, REST API Clients, Response Body Parsing, HTTP Client Wrappers, HTTP Request Execution.

Which projects share features with jnunemaker/httparty?

Projects with overlapping indexed features include: rest-client/rest-client — This is a Ruby HTTP client designed for REST API integration, resource modeling, and automated network communication.… go-resty/resty — Resty is a high-level HTTP client library for Go designed for consuming REST services. It provides a streamlined… tmenier/flurl — Flurl is a .NET fluent URL builder and HTTP client wrapper designed for constructing complex web addresses and sending… kittinunf/fuel — Fuel is a Kotlin HTTP client library for Android and Kotlin applications that handles both synchronous and… pokeb/asi-http-request — This project is an Objective-C HTTP networking library that provides an object-oriented wrapper for CFNetwork to… urllib3/urllib3 — urllib3 is a Python HTTP client library used for sending network requests and receiving responses. It functions as an…