Setting Rails Grape API

Ranjan Bajracharya
1 min readJan 31, 2021

Grape is a REST-like API framework for Ruby. It’s designed to run on Rack or complement existing web application frameworks such as Rails and Sinatra by providing a simple DSL to easily develop RESTful APIs.

Setting project with grape

Adding necessary gems for grape :-

gem 'grape', '~> 1.0', '>= 1.0.3'
gem 'grape-swagger', '~> 0.30.1'
gem 'grape-swagger-rails', '~> 0.3.0'
gem 'rack-cors', :require=>'rack/cors'

Configuration files

  • config/application.rb:
config.middleware.insert_before 0, Rack::Cors do
allow do
origins '*'
resource '*', :headers=>:any, :methods=>[:get, :post, :delete, :options]
end
end
  • config/initializers/inflections.rb
ActiveSupport::Inflector.inflections(:en) do |inflect|
inflect.acronym 'API'
end
  • config/routes.rb
Rails.application.routes.draw do
mount VersioningGrape::API => '/api'
mount GrapeSwaggerRails::Engine => '/swagger'
end

for rails 6

  • app/assets/config/manifest.js :- Adding following lines of code.
//= link grape_swagger_rails/application.css
//= link grape_swagger_rails/application.js

--

--

Ranjan Bajracharya

MSP 2017. Graduation in computer science and information technology. Studying MBA.