rack/rack

A modular Ruby web server interface.

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 51 minutes ago
Type:Library / SDKCategory(s):Backend FrameworksWeb Development
Added to GitGenius on September 13th, 2026
Created on December 24th, 2008
Open Issues & Pull Requests: 29 (+0)
GitHub issues: Enabled
Number of forks: 1,684
Total Stargazers: 5,132 (+0)
Total Subscribers: 151 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 1.2 hours
Mean response time: 8.1 days
90th percentile: 32.4 hours
Tracked items: 81

Most active contributors

Sign in to see contributor activity.

How this project is maintained

Around half of the issues opened in the past year never receive a reply. Only 8% of issues opened in the past year have been closed. Three people close 74% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 12
New in 7 days: 1
Closed in 7 days: 0
Avg open age: 262 days
Stale 30+ days: 11
Stale 90+ days: 9

Recent activity

Opened in 7 days: 1
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • Documentation (10)
  • SPEC (2)

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

Rack is a modular Ruby web server interface that defines a minimal standard for how web servers, frameworks, and applications communicate.

Rack solves the problem of fragmentation between Ruby web servers and frameworks by establishing a single, unified interface. It wraps HTTP requests and responses in the simplest possible way, reducing the bridge between these components to a single method call. Applications conforming to the Rack Specification can run on any compatible server without modification, and servers can host any Rack-compliant application without special handling.

Rack is essential for anyone building Ruby web applications or frameworks. It suits any project that needs to run on multiple servers or that wants to remain decoupled from server-specific implementation details. The tool is supported by a wide range of servers including Puma, Falcon, Unicorn, Phusion Passenger, and others, as well as by major Ruby frameworks. The project maintains separate gems for optional features like sessions and the rackup command-line tool.

Development activity shows sustained maintenance with clear version support policies. The project maintains multiple supported versions with defined end-of-life dates and provides security patches for older releases. An upgrade guide documents significant changes between major versions. The team actively manages dependencies, including addressing changes to Ruby's standard library such as the base64 gem becoming optional in newer Ruby versions.