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
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
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.
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.