78

/ 100

GradeC

Solid engineering. The biggest lever is the README.

Top 35% of 5,156 graded repos

CiviCRM (Core Application and Framework)

Top fixes

Highest-impact changes first, ranked by point weight

14 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 `tsc --noEmit`, `mypy`, or `cargo check` to catch type errors before they merge.

  4. 4
    CI/CD14pt

    Upload coverage to Codecov, Coveralls, or report it with `--coverage` flags.

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

61

Install and run instructions9pt45

README documents how to install the project.

README12pt50

README is present.

Contributing guide5pt72

CONTRIBUTING guide found.

License6pt100

Licensed under AGPL-3.0.

Engineering

81

Reproducibility6pt70

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

CI/CD14pt72

CI is configured (.github/workflows/pr-commands.yml).

Tests18pt80

Test files detected (Civi/Api4/Service/Spec).

Linting and formatting5pt100

PHP linting configured (.editorconfig).

Issue and PR templates6pt100

Issue or PR templates present.

Project health

100

Dependency manifest6pt100

Dependency manifest found (composer.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

  • 390 / 1360
    Commits (30d / 90d)
  • 891
    Forks
  • 0
    Releases

Community

  • 62% - Fair
    Community health
  • 3 bus factor
    authors own >50% of commits
  • 762
    Watchers

Responsiveness

  • -
    Median issue response
  • 1h
    Median PR merge time
  • 229
    Open issues
Repository files52 root entries
  • .github
    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.
    Good: CI is configured (.github/workflows/pr-commands.yml).
    Good: Issue or PR templates present.
  • .gitlab
  • ang
  • api
  • bin
  • Civi
    Good: Test files detected (Civi/Api4/Service/Spec).
  • CRM
  • css
  • distmaker
  • ext
  • extern
  • i
  • js
  • managed
  • mixin
  • release-notes
  • schema
  • settings
  • setup
  • sql
  • templates
  • tests
  • tools
  • xml
  • .editorconfig
    Good: PHP linting configured (.editorconfig).
  • .gitattributes
  • .gitignore
    Good: .gitignore present.
  • .jshintrc
  • agpl-3.0.exception.txt
  • Civi.php
  • civicrm-version.php
  • composer.compile.json
  • composer.json
    Good: Dependency manifest found (composer.json).
  • composer.lock
    Good: Lockfile present (composer.lock). Installs are reproducible.
  • contributor-key.yml
  • deleted-files-list.json
  • extension-compatibility.json
  • functions.php
  • gpl.txt
  • guzzle_php81_shim.php
  • header-afl.txt
  • header-agpl.txt
  • header.sql
  • header.tpl
  • header.txt
  • karma.conf.js
  • LICENSE
    Good: Licensed under AGPL-3.0.
  • package-lock.json
  • package.json
  • phpunit.xml.dist
  • README.md
    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.
    Good: README includes screenshots or visuals. Great for first impressions.
    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.
  • release-notes.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/civicrm/civicrm-core)](https://www.repo-grade.com/report/civicrm/civicrm-core)

More graded PHP repos