83

/ 100

GradeB

Well engineered. The main gaps are issue and PR templates and the README.

Top 26% of 5,156 graded repos

Firmware code of the BitBox02 hardware wallet

Top fixes

Highest-impact changes first, ranked by point weight

12 to address
  1. 1
    Tests18pt

    Wire your tests to a documented command (e.g. a test script in your build config) so the suite is reproducible.

  2. 2
    README12pt

    Show a quick-start snippet so contributors can see what using your project looks like.

  3. 3
    README12pt

    Link to a deployed version, docs site, or demo video. Users want to see it running.

  4. 4
    Install and run instructions9pt

    Add a .env.example listing all required environment variables so contributors know what to set up.

Working through the fixes? Let every push regrade itself.

The free GitHub App rescans this repo on every push and posts the grade as a commit check, so the score climbs without coming back to rescan by hand.

Install the GitHub App

Scorecard

Every check, grouped by category and sorted worst-first

Documentation

79

README12pt65

README is present.

Contributing guide5pt66

Contributing guide is too short for full depth credit (−6 pts). 400+ words earns the full +12 pts.

Add setup instructions, code style notes, and how to run tests.

Install and run instructions9pt90

README documents how to install the project.

License6pt100

Licensed under Apache-2.0.

Engineering

79

Issue and PR templates6pt0

No issue or PR templates found (−100 pts).

Add .github/ISSUE_TEMPLATE/ with bug_report.md and feature_request.md to guide contributors. It dramatically improves issue quality.

Tests18pt80

Test files detected (external/vendor/anyhow/tests).

Reproducibility6pt92

Lockfile present (external/vendor/addr2line/Cargo.lock). Installs are reproducible.

CI/CD14pt100

CI is configured (.github/workflows/ci-common.yml).

Linting and formatting5pt100

Linter or formatter configured (.pylintrc).

Project health

100

Dependency manifest6pt100

Dependency manifest found (external/vendor/addr2line/Cargo.toml).

Repository metadata5pt100

Repository has a description.

Activity5pt100

Actively maintained (pushed within the last month).

Housekeeping3pt100

.gitignore present.

Repository health signals

Activity, community, and responsiveness at scan time

Activity

  • -
    Commits (30d / 90d)
  • 148
    Forks
  • 100
    Releaseslatest 6y ago

Community

  • 75% - Good
    Community health
  • 1 bus factorlow
    author own >50% of commits
  • 384
    Watchers

Responsiveness

  • 1d 22h
    Median issue response
  • 24h
    Median PR merge time
  • 78
    Open issues
Repository files39 root entries
  • .cargo
  • .ci
  • .github
    Good: CI is configured (.github/workflows/ci-common.yml).
  • doc
  • external
    Good: Code of conduct present.
    Good: Test files detected (external/vendor/anyhow/tests).
    Good: Lockfile present (external/vendor/addr2line/Cargo.lock). Installs are reproducible.
    Good: Dependabot is configured. Dependencies update automatically.
    Good: Dependency manifest found (external/vendor/addr2line/Cargo.toml).
  • messages
  • py
  • releases
  • scripts
  • src
  • test
  • tools
  • .clang-format
  • .clang-tidy
  • .codecov.yml
  • .containerversion
  • .dockerignore
  • .gitattributes
  • .gitignore
    Good: .gitignore present.
  • .gitmodules
  • .pylintrc
    Good: Linter or formatter configured (.pylintrc).
  • AGENTS.md
  • arm.cmake
  • bitbox-da14531-firmware.bin
  • bitbox-da14531-firmware.bin.sha256
  • bootloader-stage0.ld
  • bootloader-stage1.ld
  • BUILD.md
  • CHANGELOG.md
  • CMakeLists.txt
  • CONTRIBUTING.md
    Issue: Contributing guide is too short for full depth credit (−6 pts). 400+ words earns the full +12 pts.Fix: Add setup instructions, code style notes, and how to run tests.
    Issue: Contributing guide lacks a setup section (−12 pts).Fix: Show new contributors how to get a local dev environment running.
    Issue: Contributing guide lacks a code style section (−8 pts).Fix: Describe your linting/formatting rules and how to run them.
    Issue: Contributing guide lacks a testing section (−8 pts).Fix: Show contributors how to run the test suite (e.g. npm test, pytest, cargo test).
    Good: Contributing guide describes the PR/review workflow.
    Issue: Contributing guide has no code examples (−5 pts).Fix: Add code blocks showing example commands for setup, running tests, and submitting a PR.
  • Dockerfile
    Good: Environment pinned via Dockerfile.
  • firmware-blupgrade.ld
  • firmware.ld
  • LICENSE
    Good: Licensed under Apache-2.0.
  • Makefile
  • README.md
    Good: README is present.
    Good: README is well structured with multiple sections.
    Good: README includes screenshots or visuals. Great for first impressions.
    Issue: README has no code examples (−15 pts).Fix: Show a quick-start snippet so contributors can see what using your project looks like.
    Issue: No live demo link in the README (−20 pts).Fix: Link to a deployed version, docs site, or demo video. Users want to see it running.
    Good: README includes status badges.
    Good: README documents how to install the project.
    Good: README documents how to run the project.
  • SECURITY.md
    Good: Security policy present.
  • versions.json
RepoGrade badge preview

Add this badge to your README

It updates automatically each time the repo is re-graded.

[![RepoGrade](https://www.repo-grade.com/api/badge/bitboxswiss/bitbox02-firmware)](https://www.repo-grade.com/report/bitboxswiss/bitbox02-firmware)

More graded C repos