Skip to content
CAI
Produce a survey ↗Verify a survey

ExHammer/hammer

This system is a high-performance rate-limiting library for Elixir that provides multiple throttling algorithms, including fixed window, sliding window, leaky bucket, and token bucket. It supports two distinct backends—Erlang's :atomics for lock-free concurrency and ETS for in-memory storage—allowing users to choose the implementation that best fits their performance and consistency requirements. The library manages request counts and expiration, ensuring that applications can effectively control traffic and prevent abuse through configurable limits.

60.8

Adequate · 6 August 2026

2.4k

lines of production code

Elixir

primary language

1

bus factor · 18 authors in all

4

measurements over time

CAI band scale
CAI trend line

How it got here

2017 · Hammer API redesign and backend refactoring

The project established its foundational structure and tooling while significantly refactoring the Hammer library to support multiple rate-limiting algorithms via a new macro-based API. This period introduced an atomic backend alongside an updated ETS backend, accompanied by comprehensive test coverage for various key types.

6 changes

2024–2026 · multi-algorithm ETS and atomic backends

The project expanded its rate-limiting capabilities by introducing ETS and atomic backends for five new algorithms: Fixed Window, Sliding Window, Leaky Bucket, and Token Bucket. Comprehensive test suites were added to verify correctness and concurrency safety, while benchmarks were introduced to compare the performance of these new implementations.

6 changes

CAI lens gauges

Survey your own repository

ExHammer/hammer 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 6 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 558d238295 — the exact code this score is about.
  • Scored under rubric rubric-2026.08.19. Score the same commit under that rubric and you get the same number.
CAI link cards