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. 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 ApiV1 as our main API entry. Unless you’re Netflix and need an A...
- — 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.
