Skip to content
CAI
Produce a survey ↗Verify a survey

mtrudel/bandit

Bandit is a high-performance, Plug-compatible HTTP server for the Elixir ecosystem, supporting HTTP/1.1, HTTP/2, and WebSocket protocols. It provides a complete implementation of the HTTP/2 and WebSocket specifications, including frame serialization, state management, and per-message deflate support. The system is designed to serve any standard Plug application with robust telemetry and protocol compliance.

63.6

Adequate · 1 August 2026

5.8k

lines of production code

Elixir

primary language

1

bus factor · 56 authors in all

3

measurements over time

CAI band scale
CAI trend line

How it got here

2019 · WebSocket implementation and project governance

This period focused on establishing project governance by adding standard configuration and license files, while simultaneously implementing explicit WebSocket masking logic in the codebase. The release also updated dependencies to support Elixir 1.13 and refined the test suite configuration.

4 changes

2020–2021 · HTTP/2 and protocol support

The project introduced Bandit as a new Plug-compatible HTTP server, implementing full HTTP/1.1 and HTTP/2 protocol support with automatic selection and WebSocket upgrades. This period focused on building the core HTTP/2 handler, frame serialization, and associated test infrastructure to ensure protocol compliance and stability.

7 changes

2022–2025 · WebSocket and HTTP/1.1 protocol hardening

This period focused on refactoring the WebSocket implementation into a dedicated handler with robust state management and structured frame types. Comprehensive test suites were added for both WebSocket and HTTP/1.1 protocols to ensure protocol compliance and correct frame serialization. The work also included minor asset updates and improvements to logging and telemetry coverage.

5 changes

CAI lens gauges

Survey your own repository

mtrudel/bandit 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 1 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 13d0143b14 — 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