OSS探訪GitHubでログイン

HTTP methodとURL patternをRuby DSLで直接結び、小さなRack applicationを組み立てる

スコアの見方

OSS規模スコアはStars・Watchers・Forks・Contributorsを対数圧縮して重み付けした現在の規模指標(上限なし)です。発掘スコアは現在のOSS規模スコアから発掘時点のOSS規模スコアを引いた値、更新ペースは直近30日Commit数、成長モメンタムは直近の観測期間におけるOSS規模スコア差、OSS健全度は取得できた更新状況・Community Health・Releaseの0〜100評価です。

Stars
12,454
主要言語
Ruby
ライセンス
MIT
リポジトリ最終更新
2026/07/20
ページ内ナビ

概要

Sinatraは、RubyでWeb applicationを素早く作るための軽量DSLです。route、filter、helper、template、session、streaming等を必要な分だけ組み合わせ、Rack middlewareとしてもRack endpointとしても扱えます。mainのversionは4.2.1で、Sinatra 4系はRack 3を前提にします。

特徴と向いている用途

公式資料に基づく紹介・実機未検証 · 内容確認日:

主な特徴

HTTP methodとURL patternをroute blockへ直接結び付ける

get、post、put、patch、deleteなどのDSLでrouteを定義し、named parameter、wildcard、条件付きroute、status/header/bodyをRuby codeから直接扱えます。

出典:[2]

filter・helper・template・Rack middlewareを小さなapplicationへ組み合わせる

before/after filter、helper、ERB等のtemplate、session、streaming、static file、Rack middlewareを必要な分だけ組み込み、Sinatra::Baseでmodular applicationやreusable componentとして構成できます。

出典:[2]

向いている用途

小規模API、internal tool、Webhook、機能を絞ったRuby serviceに向く

full-stack frameworkの規約を多く持ち込まず、HTTP endpointと処理を近い位置で明示したいbackendや、既存Rack stackへ小さなendpointを追加したい場合に適します。

出典:[2]

導入前の確認

Sinatra 4系はRack 3前提。server・rackup・security設定をdependencyとして確認する

mainのversionは4.2.1で、gemspecはRuby 2.7.8以上、Rack 3以上4未満を要求します。Sinatra 4.0でRack 2 supportは終了し、server起動にはrackupが別途必要です。READMEはPumaを例示し、Rack::Protectionによるattack protectionやsession secret、host authorizationもapplication要件に合わせて確認する必要があります。

出典:[3][4][2]

参考にした公式資料

  1. [1]sinatra/sinatra — GitHub repository(2026-10-06)
  2. [2]Sinatra — README(2026-10-06)
  3. [3]Sinatra — sinatra.gemspec(2026-10-06)
  4. [4]Sinatra — CHANGELOG(2026-10-06)
  5. [5]Sinatra — MIT License(2026-10-06)
編集部からの補足

Railsほど大きなframeworkを必要としないAPIやWebhookで、HTTP routeと処理を近く保てるのが強みです。Sinatra 4系はRack 3前提なので、既存Rack 2 stackからの移行ではmiddleware亖換性とrackup/server構成を先に確認してください。

3ステップで試す

  1. 1

    ソースを取得

    git clone --depth 1 https://github.com/sinatra/sinatra.git
  2. 2

    リポジトリへ移動

    cd sinatra
  3. 3

    公式手順を確認

    READMEのInstallation / Quick Start / Getting Startedにある公式コマンドを続けて実行してください。

    find . -maxdepth 1 -iname 'README*' -exec sed -n '1,220p' {} \; -quit
公式READMEで確認

成長

成長の推移 · 直近30日

12,454 Stars

推移データを蓄積中です。

開発アクティビティ

直近90日・週次

Commit(直近30日)
0
Open PR
21

開発アクティビティを蓄積中です。

Built with

カテゴリとタグ

GitHubデータ

GitHubのデータGitHubの詳細データを見る

GitHub Topics

  • ruby
  • rack
  • web-framework
  • sinatra
Stars
12,454
Forks
2,074
Watchers
357
Open Issues
27
Contributors
361
所有者種別
Organization
主要言語
Ruby
ライセンス
MIT
リポジトリ最終更新
2026/07/20

このOSSの使い方や活用事例をMarkdownで投稿できます。管理者が承認した後に公開されます。

情報の誤りを報告

掲載内容に誤りや古い情報があればお知らせください。

このページを読んで、次に何をすればよいか分かりましたか?