Skip to content
CAI
Produce a survey ↗Verify a survey

rack/rack-attack

Rack::Attack is a Ruby library designed to protect applications from malicious traffic through rate limiting, IP blocking, and request throttling. It provides a configurable middleware that integrates with various cache backends, including Redis and Memcached, to manage stateful security rules. The system emphasizes robustness and compatibility, featuring comprehensive test coverage and support for modern Rails and Rack versions.

69.0

Adequate · 2 August 2026

820

lines of production code

Ruby

primary language

2

bus factor · 100 authors in all

3

measurements over time

CAI band scale
CAI trend line

How it got here

2012 · Architecture refactoring and infrastructure

This period focused on a major internal refactoring of the Rack::Attack library, introducing a new configuration and request handling architecture to improve robustness and extensibility. The team also established comprehensive project infrastructure, including test suites, documentation, and modernized dependencies, to support the new codebase structure.

6 changes

2014–2018 · cache backend expansion and test coverage

This period focused on extending Rack::Attack's compatibility with a wider range of cache backends, including Redis, Memcached, and various ActiveSupport cache stores. The work involved implementing dedicated proxy classes for these stores and significantly expanding the test suite to cover integration, acceptance, and edge-case scenarios such as offline caches and time-sensitive operations.

6 changes

CAI lens gauges

Survey your own repository

rack/rack-attack was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point the surveyor at a repository you know and see whether you agree with it.

Survey a repository

About this page

  • The description of this project is derived from its own commit history, not from its README.
  • The score is its highest published measurement, taken on 2 August 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
  • Measured at commit b771ea18af — the exact code this score is about.
  • Scored under rubric rubric-2026.08.18. Score the same commit under that rubric and you get the same number.
CAI link cards