Sawyer is an experimental secret user agent built on top of
Think of Faraday as the nerdy scientist behind an HTTP API. Sure, he knows the technical details of how to communicate with an application. But he also gets overly obsessive about alternate timelines to be of much use.
Sawyer knows what needs to be done. He gets in there, assesses the situation, and figures out the next action.
Sawyer alternatives and similar gems
Based on the "HTTP" category.
Alternatively, view Sawyer alternatives based on common mentions on social networks and blogs.
Faraday9.4 7.4 L4 Sawyer VS FaradaySimple, but flexible HTTP client library, with support for multiple backends.
httparty9.4 4.7 L4 Sawyer VS httparty:tada: Makes http fun again!
RESTClient9.3 0.0 L4 Sawyer VS RESTClientSimple HTTP and REST client for Ruby, inspired by microframework syntax for specifying actions.
Typhoeus8.9 3.5 L5 Sawyer VS TyphoeusTyphoeus wraps libcurl in order to make fast and reliable requests.
HTTP8.3 5.6 L5 Sawyer VS HTTPHTTP (The Gem! a.k.a. http.rb) - a fast Ruby HTTP client with a chainable API, streaming support, and timeouts
Savon8.2 6.1 L5 Sawyer VS SavonHeavy metal SOAP client
excon6.6 5.3 L4 Sawyer VS exconUsable, fast, simple HTTP 1.1 for Ruby
Http Client6.2 0.0 L2 Sawyer VS Http Client'httpclient' gives something like the functionality of libwww-perl (LWP) in Ruby.
Http-25.8 0.0 L4 Sawyer VS Http-2Pure Ruby implementation of HTTP/2 protocol
Spyke5.4 2.1 L5 Sawyer VS SpykeInteract with REST services in an ActiveRecord-like manner
Patron4.8 5.0 L1 Sawyer VS PatronRuby HTTP client based on libcurl
Unirest4.4 0.0 Sawyer VS UnirestUnirest in Ruby: Simplified, lightweight HTTP client library.
Flexirest3.6 4.0 Sawyer VS FlexirestFlexirest - The really flexible REST API client for Ruby
Net2.9 10.0 Sawyer VS NetNet::HTTP provides a rich library which can be used to build HTTP user-agents.
Accept Language1.2 0.0 Sawyer VS Accept LanguageRuby parser for Accept-Language request HTTP header 🌐
XSR0.4 0.0 L5 Sawyer VS XSRXSR - eXtremely Simple REST client
Static code analysis for 29 languages.
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of Sawyer or a related project?
Sawyer is an experimental hypermedia agent for Ruby built on top of Faraday.
Add this line to your application's Gemfile:
And then execute:
Or install it yourself as:
gem install sawyer
require "sawyer" # Create a Sawyer agent agent = Sawyer::Agent.new("https://api.github.com", links_parser: Sawyer::LinkParsers::Simple.new) # Fetch the root of the API root = agent.root.data # Access a resource directly contributors = agent.call(:get, "repos/lostisland/sawyer/contributors").data # Load a hypermedia relation top_contributor = contributors.first followers = top_contributor.rels[:followers].get.data
For more information, check out the documentation.
After checking out the repo, run
script/test to bootstrap the project and run the tests.
You can also run
script/console for an interactive prompt that will allow you to experiment.
To package the gem, run
script/package. To release a new version, update the version number in [
lib/sawyer.rb](lib/sawyer.rb), and then run
script/release, which will create a git tag for the version, push git commits and tags, and push the .gem file to rubygems.org.
Check out the [contributing guide](CONTRIBUTING.md) for more information on contributing.
The gem is available as open source under the terms of the MIT License.
*Note that all licence references and agreements mentioned in the Sawyer README section above are relevant to that project's source code only.