Sinatra (software)

Sinatra is a free and open source software web application library and domain-specific language[2] written in Ruby. It is an alternative to other Ruby web application frameworks such as Ruby on Rails, Merb, Nitro, and Camping. It is dependent on the Rack web server interface. It is named after musician Frank Sinatra.[3]

Sinatra
Original author(s)Blake Mizerany
Developer(s)Konstantin Haase
Initial release9 September 2007 (2007-09-09)
Stable release
2.1.0 / 4 September 2020 (2020-09-04)[1]
RepositorySinatra Repository
Written inRuby
Operating systemCross-platform
TypeWeb application framework
LicenseMIT License
Websitewww.sinatrarb.com

Designed and developed by Blake Mizerany, Sinatra is small and flexible. It does not follow the typical model–view–controller pattern used in other frameworks, such as Ruby on Rails. Instead, Sinatra focuses on "quickly creating web-applications in Ruby with minimal effort."[4] Because of much smaller size compared to Ruby on Rails, it is also called microframework.[5]

Some notable companies and institutions that use Sinatra include Apple,[6] BBC,[7] the British Government's Government Digital Service,[8] LinkedIn,[9] the National Security Agency,[10] Engine Yard, Heroku, GitHub,[11] Stripe, and Songbird.[12] Travis CI provides much of the financial support for Sinatra's development.[3]

Sinatra was created and open-sourced in 2007. It inspired multiple ports and similar projects in other programming languages, such as Express.js and Scalatra.[5]

Example

#!/usr/bin/env ruby
require 'sinatra'

get '/' do
  redirect to('/hello/World')
end

get '/hello/:name' do
  "Hello #{params[:name]}!"
end

References

Further reading

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.