Skip to content
rebar

How to use it

Three states instead of two, and the third is what keeps the score honest: whatever does not apply leaves the denominator. An empty folder does not get a good grade.

The scoreboard for one repository

npx github:Navesz/rebar .
output
rebar-check · prumo
  ✓ editorconfig       has an .editorconfig
  ✓ dependabot         automated dependency updates
  ✓ ci                 has CI
  ✗ ci-gates           the CI reaches the verification the repository has  the CI does not reach: lint
  – orphan-schema      no orphan JSON Schema  no .schema.json in the repository
  14 of 17  ·  1 not applicable  ·  2 warning(s)

The dash is the third state. Before it existed, an empty folder with an empty .git/ scored 8 of 14 and tied with rebar itself. An excerpt: five of the rules and the closing line, from a real run on 2026-09-17 against another repository of mine.

Several repositories at once

npx github:Navesz/rebar ../a ../b ../c

A comparable summary comes out at the end. This is how the forensic pass over 161 commits in six repositories was put together.

One rule at a time, to fix without noise

npx github:Navesz/rebar --rule=ci-gates .

The filter is for fixing, not for passing: run it without the filter before you commit.

Structured output, for CI

npx github:Navesz/rebar --json .

Every rule comes out with an id, a class, a level and a state. That is what the CI step consumes.

Heuristics failing the build too

npx github:Navesz/rebar --heuristics .

By default a heuristic only informs. A wrong automatic rule costs more than a missing one — one of them was measured at seven hits and zero true positives.