grape
31 posts · All topics
- — Standardizing Exception Message Style in Ruby
While reviewing dozens of PRs from ericproulx optimizing Grape’s internals recently, I noticed that the bare raise ArgumentError, "..." calls scattered across the codebase were ...
- — Handling of HTTP Headers in Grape with Rack and Rails
I recently helped debug Grape#1880, an issue a developer had with HTTP headers in Grape and Rack. It wasn’t immediately obvious.
- — Grape Framework 1.0 Released
I took a deep breath, and released Grape Framework 1.0. We’re at 8,066 Github stars and 965 forks. I still think Grape is the best way to build Ruby RESTful APIs. I’ve written m...
- — The New Ruby Grape
- — Designing a Hypermedia API with Grape & Roar
Slides from my talk last night @ API Craft NYC: https://www.slideshare.net/dblockdotorg/designing-a-hypermedia-api-with-grape-roar.
- — Serving Hypermedia with a Grape API and Roar
I’ve begun experimenting with Hypermedia APIs a bit more seriously, trying to come up with a good infrastructure for the next version of the Artsy API. It might even be a public...
- — Anatomy of a Ruby Gem: Grape
I’ve recorded a screencast during the Anatomy of a Ruby Gem meetup in New York. It’s a deep dive into Grape internals.
- — Grape Mounted behind Goliath
Got a chance to play with Goliath for a bit. You don’t need to do much work to mount Grape behind it. Grape figures out content-negotiation and formatting for you, so just strea...
- — Evolving APIs using Grape API Versioning
I’ve seen two common API versioning strategies in the wild. The first is to use a single API version and gradually deprecate methods. This usually means introducing new API rout...
- — Grape vs. Poncho
There are a number of excellent micro-frameworks to author RESTful APIs in Ruby. Let’s take a look at the newcomer, Poncho, from the Stripe team, brought up on the Grape mailing...
- — Grape 0.4.0 Released w/ Stricter JSON Format Support & More
I’m very excited to Release Grape 0.4.0 today. Again, thanks to the 10 (!) contributors to this release.
- — Measuring Performance in Grape APIs w/ NewRelic RPM
If you’re not using NewRelic, here’s a pretty picture to convince you to try it out. And a blog post on measuring performance in Grape APIs with NewRelic RPM on the Art.sy Engin...
- — Wrapping Responses with Grape and Rack
Grape’s after blocks don’t allow you to modify response text or status code [#200]. So how can you wrap an API response?
- — GoRuCo 2012: From Zero to API Cache w/ Grape & MongoDB in 10 Minutes (Video)
tl;dr watch the video
- — Grape 0.2.0 Released
After almost a year of active development with 200+ commits, Grape 0.2.0 has finally been released. It’s the code from the “frontier” branch that we’ve been using in production ...
- — Watching Rack Application Changes with Guard-Rack
One of the frequently requested features in Grape is to automatically reload code changes, much like Rails does (#131). This is actually pretty difficult to implement and requir...
- — Grape API Mounted on RACK w/ Static Pages, Tests, JQuery UI, Backbone.js and Even Mongo
Expanding from my previous post on a Grape API mounted on RACK.
- — Grape API Mounted on RACK w/ Static Pages
tl;dr – the source is here
- — Grape vs. Webmachine
One of my favorite talks at QCon 2011 was about Webmachine. I was very curious to see what those well-disciplined Erlang people had come up with. At the end of the talk I had le...
- — Grape: Describing and Documenting an API
Building a software platform is not just an investment in the future, it’s a software architecture philosophy. A proper API is a manifestation of some of the core principles of ...
- — NYC.rb: Building RESTful APIs w/ Grape
I’m speaking at NYC.rb tonight @ Pivotal Labs, RSVP.
- — Rendering Markdown Documents in Rails
There’s got to be a prettier way of implementing this.
- — Grape: Routing Multiple Methods
Sometimes you want to support both GET and POST in a Grape API.
- — NoRails: Application Design in Times of APIs
A recent post “Rails is Not Your Application” caught my attention. It was fundamentally right, but the suggested implementation was misguided.
- — New Relic: Performance Instrumentation with Grape API
We’re using Grape in our Rails app on Heroku, which comes with New Relic instrumentation out-of-the-box. Let’s get the Grape API route details to show in New Relic as well.
- — IE9: Cache-Busting with Grape Middleware
Ran into a series of weird bugs with IE9. Turned out that a lot of our API requests were cached on the client. I am not sure whether this is some clever plot to make things work...
- — Embedding API Sandboxes in Documentation
Oh, I know how much you want this!
- — Modularizing a RoR Grape API: Multiple Versions
We made some progress with modularizing our Grape API in the last post. But we only had one version and declared Api_v1 as our main API entry. Unless you’re Netflix and need an ...
- — Modularizing a RoR Grape API
A lot of people ask me whether we use Rails controllers for our API. We don’t, we use Grape. Grape is a Rack-based system and a DSL that provides a cleaner separation, some API-...
- — Grape: API Authentication w/ Devise
Now that we have dealt with exceptions in our API we need to provide various methods of authentication. We’re going to be talking grape and devise.
- — Grape: trapping all exceptions within the API
We’ve been using Grape to provide a RESTful API. Grape is a micro-framework for Ruby that makes it really easy.
