Sinatra | |
Author: | Blake Mizerany |
Developer: | Konstantin Haase |
Operating System: | Cross-platform |
Programming Language: | Ruby |
Genre: | Web application framework |
License: | MIT License |
Sinatra is a free and open source software web application library and domain-specific language[1] 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.[2]
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."[3] Because of much smaller size compared to Ruby on Rails, it is also called microframework.[4]
Some notable companies and institutions that use Sinatra include Apple,[5] BBC,[6] the British Government's Government Digital Service,[7] LinkedIn,[8] the National Security Agency,[9] Engine Yard, Heroku, GitHub,[10] Stripe, and Songbird.[11] Travis CI provides much of the financial support for Sinatra's development.
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.[4]
Mizerany and Heroku's Adam Wiggins introduced and discussed Sinatra at RubyConf 2008.[12]
require 'sinatra'
get '/' do redirect to('/hello/World')end
get '/hello/:name' do "Hello #!"end