Activity & Vitality
BWhat is this?
Number of days since the most recent commit to the default branch.
Why it matters: Fresher commits indicate active maintenance and faster bug-fix turnaround.
How to improve:
- Set up automated dependency updates to maintain regular commit activity.
- Use CI/CD pipelines to enforce consistent integration cycles.
- Adopt trunk-based development to keep the main branch moving.
What is this?
Average number of commits pushed per month over the project's lifetime.
Why it matters: Higher commit frequency correlates with steady progress and responsiveness.
How to improve:
- Encourage small, focused commits rather than large batch changes.
- Use feature flags to merge work-in-progress safely.
- Set team commit cadence goals and track progress in dashboards.
What is this?
Number of days since the most recent versioned release was published.
Why it matters: Regular releases give users access to fixes and features, signalling a healthy delivery cycle.
How to improve:
- Automate releases via CI with semantic versioning tools.
- Adopt a time-based release schedule (e.g., every 2 weeks).
- Publish pre-releases to gather feedback before stable releases.
What is this?
Whether commit activity is growing, stable, or declining over recent months.
Why it matters: A growing or stable trend indicates sustained project momentum.
How to improve:
- Recruit new contributors through good-first-issue labels.
- Publish roadmap and contribution guides to attract participation.
- Schedule regular community events like hack sessions.
What is this?
Average number of days between consecutive releases.
Why it matters: Predictable release cadence builds user trust and simplifies upgrade planning.
How to improve:
- Automate the release pipeline to reduce manual overhead.
- Use semantic versioning to communicate change impact clearly.
- Maintain a changelog to make releases transparent and discoverable.
Community & Signals
CWhat is this?
Presence and length of the repository's README file.
Why it matters: A substantial README is the first impression for potential users and contributors.
How to improve:
- Include installation, usage, and contribution sections.
- Add badges for build status, coverage, and license.
- Keep language clear and provide code examples.
What is this?
Score from 0 to 4 measuring how many key README signals are present.
Why it matters: Quality READMEs reduce onboarding friction and improve discoverability.
How to improve:
- Ensure the README includes a project description and usage examples.
- Link to documentation, API references, and contribution guides.
- Add a table of contents for longer documents.
What is this?
Whether the repository includes an open-source license file.
Why it matters: A license determines how others can use, modify, and distribute the code.
How to improve:
- Choose an OSI-approved license that matches your project goals.
- Place the LICENSE file at the repository root.
- Use SPDX identifiers in package metadata.
What is this?
Whether the repository has a CONTRIBUTING.md or equivalent guide.
Why it matters: Clear contribution guidelines lower barriers for new contributors.
How to improve:
- Document the PR submission and review process.
- List coding standards and required tests.
- Provide templates for issues and pull requests.
What is this?
Whether the repository has a SECURITY.md or security policy.
Why it matters: A security policy gives researchers a responsible disclosure path.
How to improve:
- Create a SECURITY.md with contact and disclosure procedures.
- Set up automated dependency vulnerability scanning.
- Define SLAs for acknowledging and patching reported issues.
What is this?
Whether the repository has continuous integration configured.
Why it matters: CI catches regressions early and enforces code quality automatically.
How to improve:
- Configure a CI pipeline that runs tests on every push.
- Add linting and static analysis to the pipeline.
- Require CI pass before merging pull requests.
Issue Health
DWhat is this?
Ratio of closed issues to total issues.
Why it matters: A high closure rate indicates active issue management.
How to improve:
- Regularly triage and close duplicate or stale issues.
- Use automated staleness bots to flag inactive issues.
- Track issue age and set resolution targets.
What is this?
Ratio of issues that received at least one substantive response.
Why it matters: Unanswered issues frustrate users and signal neglect.
How to improve:
- Respond to new issues within one week, even with a brief acknowledgment.
- Use labels like 'needs-info' to prompt follow-ups.
- Create FAQ documentation for common questions.
What is this?
Ratio of issues with no activity for over 90 days.
Why it matters: Stale issues clutter the tracker and obscure genuinely important work.
How to improve:
- Implement a stale-bot to auto-label and close dormant issues.
- Review stale issues monthly and close or reprioritize them.
- Add clear resolution or wont-fix labels to closed issues.
What is this?
Median number of days until a new issue receives its first maintainer comment.
Why it matters: Quick initial responses set expectations and maintain community engagement.
How to improve:
- Configure automated acknowledgments for new issues.
- Assign triage owners on a rotating schedule.
- Use issue templates to make triage faster.
PR Health
FWhat is this?
Median number of days from PR creation to merge.
Why it matters: Faster merge cycles keep contributors motivated and reduce integration conflicts.
How to improve:
- Define maximum review SLAs (e.g., 7 days).
- Use draft PRs to signal work-in-progress and reduce pressure.
- Assign dedicated reviewers per area of the codebase.
What is this?
Ratio of closed or merged pull requests to total PRs.
Why it matters: A high closure rate shows the project actively processes contributions.
How to improve:
- Regularly review open PRs and provide actionable feedback.
- Close PRs that are no longer relevant with a courteous explanation.
- Track PR age in project dashboards.
What is this?
Ratio of merged PRs that received at least one review before merging.
Why it matters: Code reviews catch bugs and spread knowledge across the team.
How to improve:
- Enforce branch protection rules requiring at least one approval.
- Encourage thorough but timely reviews with clear expectations.
- Use CODEOWNERS files to auto-assign reviewers.
What is this?
Median number of lines changed per pull request.
Why it matters: Smaller PRs are easier to review, less error-prone, and merge faster.
How to improve:
- Break large changes into a series of focused, small PRs.
- Use feature flags to merge incrementally.
- Set guidelines recommending PRs under 300 lines of change.
What is this?
Average number of review comments per pull request.
Why it matters: More thorough reviews lead to higher code quality and knowledge sharing.
How to improve:
- Encourage inline comments over blanket approval.
- Provide review guidelines covering style, logic, and test coverage.
- Recognize thorough reviewers in community channels.
Contributors
CWhat is this?
Total number of unique contributors to the repository.
Why it matters: A larger contributor base reduces bus factor and brings diverse perspectives.
How to improve:
- Label good-first-issues to attract new contributors.
- Mentor first-time contributors through the review process.
- Celebrate contributions in release notes and community updates.
What is this?
Minimum number of contributors whose departure would stall the project.
Why it matters: Higher bus factor means the project can withstand key-person departures.
How to improve:
- Distribute code ownership across multiple maintainers.
- Document architectural decisions and onboarding guides.
- Rotate responsibilities so knowledge is shared broadly.
What is this?
Whether the contributor base is growing, stable, or declining.
Why it matters: Growing contributor communities indicate a healthy, attractive project.
How to improve:
- Run contributor sprints or hackathons.
- Maintain a welcoming code of conduct.
- Offer mentorship programs for new contributors.
What is this?
Ratio of contributors active in the last 90 days to total contributors.
Why it matters: Sustained engagement shows the project retains contributors over time.
How to improve:
- Recognize active contributors with maintainer or committer roles.
- Publish regular project updates to keep the community engaged.
- Create recurring community events to maintain momentum.
Grade History
| Date | Overall | Activity & Vitality | Community & Signals | Issue Health | PR Health | Contributors |
|---|---|---|---|---|---|---|
| 2026-07-02 | C | B | C | D | F | C |
| 2026-06-12 | F | F | F | F | F | F |
| 2026-05-08 | C | B | C | D | F | C |
Without a license, others cannot legally use or contribute to your project.
Go to Community & SignalsA security policy gives researchers a clear path to report vulnerabilities.
Go to Community & SignalsRegularly triage and close duplicate or invalid issues.
Go to Issue HealthUnanswered issues frustrate users. Set up triage rotation.
Go to Issue HealthQuick first responses show an active community. Set up notifications for new issues.
Go to Issue HealthLong merge times discourage contributors. Set PR size limits and review SLAs.
Go to PR HealthDefine a PR review process with clear ownership.
Go to PR HealthRequire at least one approval before merging and enable branch protection.
Go to PR HealthSmaller PRs are easier to review. Break large changes into focused PRs.
Go to PR HealthMore substantive reviews catch more issues. Use review checklists.
Go to PR Health+4 more recommendations