Sinatrify
Make Rails controllers look like Sinatra.
class ShowoffController < ApplicationController
include Sinatrify::DSL
get "/greet" do
render :text => "Hello!"
end
end
Installation
Add it to the Gemfile
gem "sinatrify"
Bundle it with bundle.
Sinatrify doesn't include its DSL into controllers automatically. You should do so manually for each controller, like in the above example.
Mount your sinatrified controller somewhere
# in config/routes.rb
mount lambda { |env| ShowoffController.call(env) } => "/api"
lambda is used here so your code gets reloaded in development.
Works on Rails >3.0 only.
Examples
Check out the example_app folder.
Testing
Run rake test for specs and rake appraise for features.
Contributing
Pull requests welcome!