Sinatra is a DSL for quickly creating web applications in Ruby with minimal effort. Created by Blake Mizerany in 2007, Sinatra inspired Express.js, Slim, Flask, and dozens of other micro-frameworks across other languages.
A complete Sinatra application fits in a handful of lines: declare routes inline with HTTP verbs and URL patterns, render templates, return responses. Perfect for APIs, prototypes, and microservices.
Classy web-app DSL for Ruby. Define an HTTP service in a single file with elegant route syntax.
โจ Features
get '/hello' do ... end. The whole framework reads like a haiku.
Standard Rack interface. Plug in any Rack middleware from the Ruby ecosystem.
Few hundred lines of code. Readable end-to-end in an afternoon. No surprises.
Trivial to test. Spin up the app in-process, send requests, assert responses.
Top-level DSL for quick scripts, modular subclass for reusable apps. Pick the style that fits.