72

/ 100

GradeC

Good shape overall. A few tweaks would push it into the top tier.

Top 43% of 5,156 graded repos

More compatible Bazel rules for running Python tools and building Python projects

Starlark142Apache-2.01mo ago

Top fixes

Highest-impact changes first, ranked by point weight

19 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

    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

83

README12pt70

README is present.

Contributing guide5pt84

Contributing guide is detailed and thorough.

Install and run instructions9pt90

README documents how to install the project.

License6pt100

Licensed under Apache-2.0.

Engineering

56

Linting and formatting5pt0

No linter or formatter configured.

Add [tool.ruff] to pyproject.toml. Ruff handles linting and formatting in one tool and replaces flake8, isort, and black.

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-workflows.yaml).

Reproducibility6pt70

Lockfile present (requirements.txt). Installs are reproducible.

Tests18pt85

Test files detected (e2e/cases/inactive-marker/inactive_marker_test.py).

Project health

93

Dependency manifest6pt78

Dependency manifest found (pyproject.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)
  • 90
    Forks
  • 63
    Releaseslatest 2y ago

Community

  • 75% - Good
    Community health
  • -
    authors own >50% of commits
  • 142
    Watchers

Responsiveness

  • 49d 15h
    Median issue response
  • 4h
    Median PR merge time
  • 98
    Open issues
Repository files32 root entries
  • .aspect
  • .bcr
  • .github
    Good: CI is configured (.github/workflows/ci-workflows.yaml).
  • bazel
  • benchmark
  • docs
  • e2e
    Good: Test files detected (e2e/cases/inactive-marker/inactive_marker_test.py).
  • examples
  • py
  • third_party
  • tools
  • uv
  • .bazelignore
  • .bazelrc
  • .bazelversion
  • .gitattributes
  • .gitignore
    Good: .gitignore present.
  • .pre-commit-config.yaml
  • .prettierignore
  • .typos.toml
  • annotations.toml
  • BUILD.bazel
  • CONTRIBUTING.md
    Good: Contributing guide is detailed and thorough.
    Good: Contributing guide includes setup/install instructions.
    Good: Contributing guide describes code style expectations.
    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).
    Issue: Contributing guide lacks a PR workflow section (−8 pts).Fix: Explain how to fork, branch, and open a pull request so contributors know what to expect.
    Good: Contributing guide includes code examples.
  • gazelle_python.yaml
  • LICENSE
    Good: Licensed under Apache-2.0.
  • MODULE.bazel
  • pyproject.toml
    Good: Dependency manifest found (pyproject.toml).
  • README.md
    Good: README is present.
    Good: README is well structured with multiple sections.
    Issue: No screenshots or images in the README (−20 pts).Fix: Add a GIF, screenshot, or logo image. It is the fastest way to show what your project does.
    Good: README has code examples.
    Good: README links to a live demo or deployed app.
    Issue: No status badges in the README (−10 pts).Fix: Add CI/build status badges from shields.io or your CI provider to signal project health.
    Good: README documents how to install the project.
    Good: README documents how to run the project.
  • renovate.json
  • requirements.in
  • requirements.txt
    Good: Lockfile present (requirements.txt). Installs are reproducible.
  • uv.lock
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/aspect-build/rules_py)](https://www.repo-grade.com/report/aspect-build/rules_py)

More graded Starlark repos