0

/ 100

GradeF

Getting noticed, but rough fundamentals could turn visitors away.

Higher than 22% of 5,156 graded repos

IPSW Diffs

A low grade is a to-do list, not a judgment of your code

Most gaps here are documentation, tests, and setup, not the code itself. Closing your top 3 gaps alone would lift this repo to D (63).

See your top fixes
Now
F
33
Potential
D
63

Top fixes

Highest-impact changes first, ranked by point weight

20 to address
  1. 1
    Tests18pt

    Add automated tests. They prove the code works and give contributors confidence to make changes.

  2. 2
    CI/CD14pt

    Add a step like `run: npm test`, `run: pytest`, or `run: tox` to your workflow file.

  3. 3
    CI/CD14pt

    Add `pull_request:` to the workflow `on:` triggers.

  4. 4
    CI/CD14pt

    Add a lint step to catch style issues automatically.

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

58

Contributing guide5pt0

No CONTRIBUTING.md found (−47 pts base + up to −53 pts more for content).

Add a CONTRIBUTING.md telling newcomers how to get involved. Include setup, code style, test, and PR instructions.

Install and run instructions9pt45

No install instructions found in the README (−45 pts).

Add a section showing how to install dependencies.

README12pt70

This repository is large enough that GitHub truncated the file tree. The scan is based on a partial file list, so some checks may under-report.

License6pt100

Licensed under MIT.

Engineering

13

Tests18pt0

No tests detected anywhere in the repository.

Add automated tests. They prove the code works and give contributors confidence to make changes.

Linting and formatting5pt0

No linter or formatter config found.

Add a linter config such as .eslintrc.json, .prettierrc, ruff.toml, or .golangci.yml to enforce consistent code style.

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.

Reproducibility6pt12

No dependency lockfile found (−70 pts).

Commit the lockfile for this project's package manager so installs produce the same dependency versions everywhere.

CI/CD14pt40

CI is configured (.github/workflows/diff.yml).

Project health

43

Dependency manifest6pt0

No dependency manifest detected at root.

Add a manifest (package.json, pyproject.toml, Cargo.toml, go.mod, etc.) so others can install dependencies in one command.

Repository metadata5pt40

No repository description set on GitHub (−60 pts).

Add a one-line description in the repo Settings → About. It appears in search results and social previews.

Housekeeping3pt40

No .gitignore found (−60 pts).

Add a .gitignore to keep build output, node_modules, and secrets out of version control.

Activity5pt100

Actively maintained (pushed within the last month).

Repository health signals

Activity, community, and responsiveness at scan time

Activity

  • -
    Commits (30d / 90d)
  • 33
    Forks
  • 0
    Releases

Community

  • -
    Community health
  • -
    authors own >50% of commits
  • 745
    Watchers

Responsiveness

  • <1h
    Median issue response
  • 1h
    Median PR merge time
  • 4
    Open issues
Repository files51 root entries
  • .cache
  • .github
    Good: CI is configured (.github/workflows/diff.yml).
    Good: Dependabot configured for github-actions.
  • 12_5_7_16H81__vs_12_5_8_16H88
  • 15_0_24A5279h__vs_15_0_24A5289g
    Good: Security policy present.
  • 15_3_2_24D81__vs_15_4_24E248
  • 15_4_24E248__vs_15_5_24F5042g
  • 15_8_6_19H402__vs_15_8_7_19H411
  • 16_7_13_20H365__vs_16_7_14_20H370
  • 16_7_14_20H370__vs_16_7_15_20H380
  • 17_5_1_21F90__vs_18_0_22A5282m
  • 17_6_1_21G101__vs_17_7_21H16
  • 17_6_1_21G93__vs_17_6_1_21G101
  • 17_6_21G5052e__vs_17_6_21G5061c
  • 17_6_21G5061c__vs_17_6_21G5066d
  • 17_6_21G5066d__vs_17_6_21G5075a
  • 17_6_21G5075a__vs_17_6_21G79
  • 17_6_21G79__vs_17_6_1_21G93
  • 17_7_5_21H420__vs_17_7_6_21H423
  • 17_7_7_21H433__vs_17_7_8_21H440
  • 18_0_22A3354__vs_18_0_1_22A3370
  • 18_0_22A5282m__vs_18_0_22A5297f
  • 18_0_22A5297f__vs_18_0_22A5307f
  • 18_0_22A5307f__vs_18_0_22A5307i
  • 18_0_22A5307i__vs_18_0_22A5316j
  • 18_0_22A5316k__vs_18_0_22A5326f
  • 18_0_22A5316k__vs_18_1_22B5007p
  • 18_0_22A5326f__vs_18_0_22A5338b
  • 18_0_22A5338b__vs_18_0_22A5346a
  • 18_0_22A5346a__vs_18_0_22A5350a
  • 18_0_22A5350a__vs_18_0_22A3354
  • 18_1_22B5007p__vs_18_1_22B5023e
  • 18_1_22B5023e__vs_18_1_22B5034e
  • 18_1_22B5034e__vs_18_1_22B5045g
  • 18_1_22B5045g__vs_18_1_22B5045h
  • 18_1_22B5045h__vs_18_1_22B5054e
  • 18_1_22B5054e__vs_18_1_22B5069a
  • 18_1_22B5069a__vs_18_1_22B5075a
  • 18_1_22B5075a__vs_18_1_22B82
  • 18_1_22B82__vs_18_1_1_22B91
  • 18_1_22B82__vs_18_2_22C5109p
  • 18_2_22C150__vs_18_2_22C151
  • 18_2_22C151__vs_18_2_22C152
  • 18_2_22C152__vs_18_2_1_22C161
  • 18_2_22C152__vs_18_3_22D5034e
  • 18_2_22C5109p__vs_18_2_22C5125e
  • 18_2_22C5125e__vs_18_2_22C5131e
  • 18_2_22C5131e__vs_18_2_22C5142a
  • 18_2_22C5142a__vs_18_2_22C150
  • 18_3_1_22D72__vs_18_3_2_22D82
  • 18_3_1_22D72__vs_18_4_22E5200s
  • 18_3_1_22D8075__vs_18_4_22E5216h
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/blacktop/ipsw-diffs)](https://www.repo-grade.com/report/blacktop/ipsw-diffs)

More graded Just repos