0

/ 100

GradeF

Getting noticed, but rough fundamentals could turn visitors away.

Higher than 27% of 5,156 graded repos

Aggregated AbuseIPDB blocklists with worst IPv4 & IPv6 offenders (~99% confidence)

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 (64).

See your top fixes
Now
F
39
Potential
D
64

Top fixes

Highest-impact changes first, ranked by point weight

22 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 a lint step to catch style issues automatically.

  4. 4
    CI/CD14pt

    Add `tsc --noEmit`, `mypy`, or `cargo check` to catch type errors before they merge.

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

48

License6pt0

No license detected.

→ Add a LICENSE file. Without one, nobody can legally use, copy, or contribute to your code.

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.

README12pt93

README is present.

Engineering

16

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

→ Add ESLint (eslint.config.js) and/or Prettier (.prettierrc), install them as devDependencies, and add a `lint` script to package.json.

Reproducibility6pt0

No dependency lockfile found (−70 pts).

→ Commit package-lock.json, pnpm-lock.yaml, yarn.lock, or bun.lock so Node installs are repeatable.

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.

CI/CD14pt57

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

Project health

86

Dependency manifest6pt55

Dependency manifest found (package.json).

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)
  • 36
    Forks
  • 0
    Releases

Community

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

Responsiveness

  • 2d 10h
    Median issue response
  • -
    Median PR merge time
  • 1
    Open issues
Repository files21 root entries
  • .cron
  • .github
    Good: CI is configured (.github/workflows/ci.yml).
  • .vscode
  • db
  • stats
  • .gitattributes
  • .gitignore
    Good: .gitignore present.
  • abuseipdb-s100-120d.ipv4
  • abuseipdb-s100-14d.ipv4
  • abuseipdb-s100-180d.ipv4
  • abuseipdb-s100-1d.ipv4
  • abuseipdb-s100-30d.ipv4
  • abuseipdb-s100-365d.ipv4
  • abuseipdb-s100-3d.ipv4
  • abuseipdb-s100-60d.ipv4
  • abuseipdb-s100-7d.ipv4
  • abuseipdb-s100-90d.ipv4
  • abuseipdb-s100-all.ipv4.gz
  • deno.json
  • package.json
    Good: Dependency manifest found (package.json).
  • README.md
    Good: README is present.
    Issue: README has some structure (−7 pts). 2-3 headings earns partial credit; 4+ earns the full +15 pts.Fix: Add more sections (Overview, Install, Usage, Contributing) using ## headings.
    Good: README includes screenshots or visuals. Great for first impressions.
    Good: README has code examples.
    Good: README links to a live demo or deployed app.
    Good: README includes status badges.
    Issue: No install instructions found in the README (−45 pts).Fix: Add a section showing how to install dependencies.
    Good: README documents how to run the project.
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/borestad/blocklist-abuseipdb)](https://www.repo-grade.com/report/borestad/blocklist-abuseipdb)

More graded Shell repos