0

/ 100

GradeD

Popular for its size, but the engineering basics lag behind the interest.

Higher than 49% of 5,156 graded repos

A Python Package for Data Exfiltration

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 B (83).

See your top fixes
Now
D
65
Potential
B
83

Top fixes

Highest-impact changes first, ranked by point weight

10 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
    CI/CD14pt

    If your CI lives elsewhere (a private repo that builds this one) or this project is itself a CI/CD tool, mark this check Not Applicable. Otherwise add a GitHub Actions workflow that runs tests on each push. It takes 15 minutes and reassures contributors their changes won't break things.

  3. 3
    Install and run instructions9pt

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

  4. 4
    Reproducibility6pt

    Add a Dockerfile, .nvmrc, or .python-version to pin the runtime version and make the environment reproducible.

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

85

Contributing guide5pt25

Contributing guidance is in the README, not a dedicated CONTRIBUTING.md (−20 pts).

Moving it to a CONTRIBUTING.md makes it easier to find and keeps the README focused. A dedicated file earns +47 pts base.

Install and run instructions9pt90

README documents how to install the project.

README12pt100

README is present.

License6pt100

Licensed under MIT.

Engineering

38

CI/CD14pt0

No CI configuration detected in this repository.

If your CI lives elsewhere (a private repo that builds this one) or this project is itself a CI/CD tool, mark this check Not Applicable. Otherwise add a GitHub Actions workflow that runs tests on each push. It takes 15 minutes and reassures contributors their changes won't break things.

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.

Reproducibility6pt70

Lockfile present (pyexfil/Stega/datamatrix/requirements.txt). Installs are reproducible.

Tests18pt80

Test files detected (tests).

Project health

100

Dependency manifest6pt100

Dependency manifest found (setup.py).

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)
  • 145
    Forks
  • 4
    Releaseslatest 5y ago

Community

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

Responsiveness

  • 9d 19h
    Median issue response
  • 7h
    Median PR merge time
  • 3
    Open issues
Repository files15 root entries
  • blackhat
  • pyexfil
    Good: Lockfile present (pyexfil/Stega/datamatrix/requirements.txt). Installs are reproducible.
  • static
  • tests
    Good: Test files detected (tests).
  • .gitignore
    Good: .gitignore present.
  • ARCHITECTURE.md
  • CALL_TO_ACTION.md
  • DOCUMENTATION.md
  • EXAMPLES.py
  • LICENSE.md
    Good: Licensed under MIT.
  • README.md
    Good: README is present.
    Good: README is well structured with multiple sections.
    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.
    Good: README documents how to install the project.
    Good: README documents how to run the project.
  • requirements2.7.txt
  • requirements3.txt
  • setup.py
    Good: Dependency manifest found (setup.py).
  • USAGE.md
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/ytisf/pyexfil)](https://www.repo-grade.com/report/ytisf/pyexfil)

More graded Python repos