Inspiration

As developers, we often discover new open-source projects and wonder: "Is this repo actively maintained? Should I depend on it?" I wanted a quick way to assess repository health without manually checking commit history, issue response times, and contributor activity. Inspired by health dashboards and fitness trackers, I created gh-pulse - a CLI tool that gives any GitHub repo a comprehensive health checkup in seconds.

What it does

gh-pulse analyzes any public GitHub repository and generates a health score from 0-100 (graded A+ to F) based on four key metrics:

Activity (25 pts) - Recent commits, days since last push Maintenance (25 pts) - Issue response times, stale issues, PR merge speed Community (25 pts) - Total contributors, new contributor growth Popularity (25 pts) - Stars, forks, watchers

It displays a beautiful terminal dashboard with color-coded progress bars and provides actionable recommendations like "45% of issues are stale" or "Consider adding good-first-issue labels."

How I built it

Node.js for the CLI runtime Commander.js for argument parsing Chalk, Ora, Boxen for beautiful terminal UI GitHub REST API for fetching repo data GitHub Copilot assisted with API integration patterns, scoring algorithms, and terminal formatting GitHub Actions for CI/CD pipeline

The tool includes a --demo mode for testing without API calls and supports --json output for scripting.

Challenges I ran into

API Rate Limits - GitHub's unauthenticated limit is 60 requests/hour. I optimized API calls and added token support for higher limits. Scoring Algorithm - Balancing the four categories fairly took iteration. A repo with 100K stars but no recent commits shouldn't get an A+. Terminal Rendering - Making the CLI output look great across different terminals required careful Unicode character selection.

Accomplishments that I am proud of

Clean, working CLI that actually provides useful insights Professional GitHub workflow with branches, PRs, and CI/CD Demo mode that works offline for presentations Beautiful terminal UI with progress bars and color-coded grades Actionable recommendations, not just scores

What I learned

How to structure a CLI tool for great developer experience GitHub API best practices and rate limit handling The power of GitHub Copilot for rapid prototyping Importance of good README and CONTRIBUTING docs for open-source projects

What's next for GH-PULSE

Support for private repos with GitHub App authentication GitHub Enterprise support Web dashboard version with historical tracking Badge generation for README files (like "Health: A+") Caching to reduce API calls Compare multiple repos side-by-side npm package publication for global install

Built With

Share this project:

Updates