72
/ 100
Good shape overall. A few tweaks would push it into the top tier.
More compatible Bazel rules for running Python tools and building Python projects
Top fixes
Highest-impact changes first, ranked by point weight
- 1Tests18pt
Wire your tests to a documented command (e.g. a test script in your build config) so the suite is reproducible.
- 2CI/CD14pt
Add a step like `run: npm test`, `run: pytest`, or `run: tox` to your workflow file.
- 3CI/CD14pt
Add a lint step to catch style issues automatically.
- 4CI/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.
Scorecard
Every check, grouped by category and sorted worst-first
Documentation
83
README is present.
Contributing guide is detailed and thorough.
README documents how to install the project.
Licensed under Apache-2.0.
Engineering
56
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.
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 is configured (.github/workflows/ci-workflows.yaml).
Lockfile present (requirements.txt). Installs are reproducible.
Test files detected (e2e/cases/inactive-marker/inactive_marker_test.py).
Project health
93
Dependency manifest found (pyproject.toml).
Repository has a description.
Actively maintained (pushed within the last month).
.gitignore present.
Repository health signals
Activity, community, and responsiveness at scan time
Activity
- -Commits (30d / 90d)
- 90Forks
- 63Releaseslatest 2y ago
Community
- 75% - GoodCommunity health
- -authors own >50% of commits
- 142Watchers
Responsiveness
- 49d 15hMedian issue response
- 4hMedian PR merge time
- 98Open issues
Repository files32 root entries
- .aspect
- .bcr
- .githubGood: CI is configured (.github/workflows/ci-workflows.yaml).
- bazel
- benchmark
- docs
- e2eGood: Test files detected (e2e/cases/inactive-marker/inactive_marker_test.py).
- examples
- py
- third_party
- tools
- uv
- .bazelignore
- .bazelrc
- .bazelversion
- .gitattributes
- .gitignoreGood: .gitignore present.
- .pre-commit-config.yaml
- .prettierignore
- .typos.toml
- annotations.toml
- BUILD.bazel
- CONTRIBUTING.mdGood: 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
- LICENSEGood: Licensed under Apache-2.0.
- MODULE.bazel
- pyproject.tomlGood: Dependency manifest found (pyproject.toml).
- README.mdGood: 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.txtGood: Lockfile present (requirements.txt). Installs are reproducible.
- uv.lock
Add this badge to your README
It updates automatically each time the repo is re-graded.
[](https://www.repo-grade.com/report/aspect-build/rules_py)