0

/ 100

GradeC

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

Top 36% of 5,156 graded repos

Search the seas for your lost treasure.

Top fixes

Highest-impact changes first, ranked by point weight

11 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
    README12pt

    Expand with a description, install steps, usage, and examples.

  3. 3
    README12pt

    Break it into sections (Overview, Install, Usage, Contributing) using Markdown headings.

  4. 4
    README12pt

    Add a GIF, screenshot, or logo image. It is the fastest way to show what your project does.

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

54

README12pt30

README is present.

Install and run instructions9pt45

README documents how to install the project.

Contributing guide5pt72

CONTRIBUTING guide found.

License6pt100

Licensed under Other.

Engineering

82

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.

Tests18pt80

Test files detected (conftest.py).

CI/CD14pt100

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

Reproducibility6pt100

Lockfile present (uv.lock). Installs are reproducible.

Issue and PR templates6pt100

Issue or PR templates present.

Project health

100

Dependency manifest6pt100

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)
  • 63
    Forks
  • 118
    Releaseslatest 5y ago

Community

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

Responsiveness

  • 20d 17h
    Median issue response
  • 5h
    Median PR merge time
  • 46
    Open issues
Repository files42 root entries
  • .claude
  • .github
    Good: CI is configured (.github/workflows/ci.yml).
    Good: Dependabot covers 4 ecosystems (npm, pip, docker, github-actions). Dependencies stay current.
    Good: Issue or PR templates present.
  • .vscode
  • bin
  • config
  • devenv
  • devservices
  • docs
    Good: CONTRIBUTING guide found.
    Issue: CONTRIBUTING guide contents could not be read (−28 pts vs a readable file).Fix: Move the file to the repo root or docs/CONTRIBUTING.md so its setup, style, test, and PR sections can be graded.
  • gocd
  • rust_snuba
  • scripts
  • sentry-options
  • snuba
  • test_distributed_migrations
  • test_initialization
  • tests
  • tools
  • .craft.yml
  • .dockerignore
  • .envrc
  • .gitattributes
  • .gitignore
    Good: .gitignore present.
  • .pre-commit-config.yaml
  • .python-version
  • Brewfile
  • CHANGELOG.md
  • codecov.yml
  • CODEOWNERS
  • conftest.py
    Good: Test files detected (conftest.py).
  • DEVELOPMENT.md
  • docker_entrypoint.py
  • docker_entrypoint.sh
  • docker-compose.gcb.yml
  • Dockerfile
    Good: Environment pinned via Dockerfile.
  • docs-requirements.txt
  • LICENSE.md
    Good: Licensed under Other.
  • Makefile
  • MIGRATIONS.md
  • pyproject.toml
    Good: Dependency manifest found (pyproject.toml).
  • README.rst
    Good: README is present.
    Issue: README is fairly short (−10 pts). At 400+ chars you get partial credit; 1,500+ earns the full +20 pts.Fix: Expand with a description, install steps, usage, and examples.
    Issue: README has little structure (−15 pts). Add 2-3 headings for +8 pts; 4+ earns +15 pts.Fix: Break it into sections (Overview, Install, Usage, Contributing) using Markdown headings.
    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.
    Issue: README has no code examples (−15 pts).Fix: Show a quick-start snippet so contributors can see what using your project looks like.
    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.
    Issue: No run or usage instructions found (−45 pts).Fix: Add a section showing how to start or use the project.
  • setup.cfg
  • uv.lock
    Good: Lockfile present (uv.lock). Installs are reproducible.
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/getsentry/snuba)](https://www.repo-grade.com/report/getsentry/snuba)

More graded Python repos