dio
Dio - Dive Into Objects - Ruby Pattern Matching interface for Objects which have none (yet) (by baweaver)
HTTP
HTTP (The Gem! a.k.a. http.rb) - a fast Ruby HTTP client with a chainable API, streaming support, and timeouts (by httprb)
dio | HTTP | |
---|---|---|
3 | 6 | |
24 | 2,988 | |
- | 0.1% | |
3.6 | 5.8 | |
over 3 years ago | about 1 month ago | |
Ruby | Ruby | |
MIT License | MIT License |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
dio
Posts with mentions or reviews of dio.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-01-23.
-
Pattern Matching Interfaces in Ruby
Pattern matching interfaces can be simulated using gems such as Dio for testing purposes. It does not act as a replacement, but rather a stand-in to test interfaces without full implementations.
-
Exclude elements from a Ruby hash based on contents of nested hash?
Pattern matching is very powerful, but unfortunately it's very picky about String versus Symbol keys in these cases which is annoying. I made Dio as a quick hack around this, but it's more for experimenting and feeling out an interface than prod usage: https://github.com/baweaver/dio
- Dio - Dive Into Object - Pattern Matching Interface Wrapper for non-PM Objects
HTTP
Posts with mentions or reviews of HTTP.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-04-05.
-
Best Ruby HTTP Clients in 2023
Where's http.rb?
-
Pattern Matching Interfaces in Ruby
I had submitted a PR against this repo, but I believe the two most interesting types to match against are responses and requests:
-
My project: railstart app
http
-
7 Ruby Standard libraries you should get to grips with
In the past I have opted to use the HTTP.rb gem, but for simple tasks itโs really useful to learn Net/http or even open-uri for simple GET requests.
-
The Best Ruby HTTP clients for 2021
I actually like HTTP.rb's API more, but they still can't make a decision about "base URL" API, which is quite valuable for API wrappers, e.g. @client = HTTPLibrary.new('https://api.base.com/v2/') and then @client.get('/foo').
-
Ruby on Rails + Auth0: Authenticating your API with an external authentication service
Everything will be created under the class Auth0, and it'll be using HTTP gem to perform the quests, but feel free to decide over your code organization and tools.
What are some alternatives?
When comparing dio and HTTP you can also consider the following projects:
deconstructable
Faraday - Simple, but flexible HTTP client library, with support for multiple backends.
ast - A library for working with Abstract Syntax Trees.
httparty - :tada: Makes http fun again!
Typhoeus - Typhoeus wraps libcurl in order to make fast and reliable requests.
excon - Usable, fast, simple HTTP 1.1 for Ruby
Unirest - Unirest in Ruby: Simplified, lightweight HTTP client library.
XSR - XSR - eXtremely Simple REST client
RESTClient - Simple HTTP and REST client for Ruby, inspired by microframework syntax for specifying actions.
Http-2 - Pure Ruby implementation of HTTP/2 protocol
Accept Language - Ruby parser for Accept-Language request HTTP header ๐
Savon - Heavy metal SOAP client