Good shape overall. A few tweaks would push it into the top tier.
CiviCRM (Core Application and Framework)
Documentation
61
Install and run instructions9pt
45
README documents how to install the project.
README12pt
50
README is present.
Contributing guide5pt
72
CONTRIBUTING guide found.
License6pt
100
Licensed under AGPL-3.0.
Engineering
81
Reproducibility6pt
70
Lockfile present (composer.lock). Installs are reproducible.
CI/CD14pt
72
CI is configured (.github/workflows/pr-commands.yml).
Tests18pt
80
Test files detected (Civi/Api4/Service/Spec).
Linting and formatting5pt
100
PHP linting configured (.editorconfig).
Issue and PR templates6pt
100
Issue or PR templates present.
Project health
100
Dependency manifest6pt
100
Dependency manifest found (composer.json).
Repository metadata5pt
100
Repository has a description.
Activity5pt
100
Actively maintained (pushed within the last month).
Housekeeping3pt
100
.gitignore present.
Repository health signals
Activity, community, and responsiveness at scan time
Activity
- —Commits (30d / 90d)
- 885Forks
- 0Releases
Community
- —Community health
- —authors own >50% of commits
- 749Watchers
Responsiveness
- —Median issue response
- 1hMedian PR merge time
- 257Open issues
Repository files52 root entries
- .githubGood: 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
- CiviGood: 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
- .editorconfigGood: PHP linting configured (.editorconfig).
- .gitattributes
- .gitignoreGood: .gitignore present.
- .jshintrc
- agpl-3.0.exception.txt
- Civi.php
- civicrm-version.php
- composer.compile.json
- composer.jsonGood: Dependency manifest found (composer.json).
- composer.lockGood: 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
- LICENSEGood: Licensed under AGPL-3.0.
- package-lock.json
- package.json
- phpunit.xml.dist
- README.mdGood: 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