Dmitry MakeevMar 19
Фреймворк Sinatra
Sinatra — бесплатный и окрытый DSL-фреймворк, написанный с использованием языка Ruby со всеми из этого вытекающими. В отличии от тяжеловеса Ruby on Rails, Sinatra из коробки имеет минимум зависимостей, а структура приложения ни коим образом не навязывается.
Благодаря обширной коллекции готовых гемов расширение функциональности — не проблема.
Sinatra подходит как для создания приложения без фронтенда — API, так и с легкостью справится с рендером шаблонов.
Пример рендера JSON (требуется гем json):
require 'json'
get '/example.json' do
content_type :json
{ :key1 => 'value1', :key2 => 'value2' }.to_json
end
Минимальное рабочее приложение имеет следующий вид:
require 'rubygems'
require 'sinatra'
get '/hi' do
'Привет, мир!'
end
Затем, выполнив:
ruby app.rb
приложение будет доступно по адресу localhost:4567
Официальная документация — http://www.sinatrarb.com/intro.html
Официальный репозиторий — https://github.com/sinatra/sinatra