A responsive, open-source dashboard for reviewing GitHub repository health, issue backlog, pull requests, and contributor activity.
- Repository overview with stars, forks, GitHub's open-items count, language, license, default branch, and last-updated date. GitHub includes open pull requests in its repository count.
- Separate open/closed issue and pull-request queues.
- Client-side issue search by title, author, or issue number, plus filtering by labels.
- Up to five recently viewed repositories saved in the current browser.
- Contributor activity and responsive layouts for mobile, tablet, and desktop.
- GitHub API requests and optional token handled by the Express server; no frontend framework required.
- Independent queue loading: an issue, pull-request, or contributor API error does not hide the repository overview or other successful results.
- Node.js 18 or newer (the server uses the built-in
fetchAPI). - npm.
Windows Command Prompt:
cd C:\path\to\drips-wave-maintainer-dashboard
npm install
copy .env.example .env
notepad .env
npm startPowerShell:
Set-Location C:\path\to\drips-wave-maintainer-dashboard
npm install
Copy-Item .env.example .env
notepad .env
npm startOpen http://localhost:3000. Set DEFAULT_REPO in .env to prefill a repository in the dashboard. A GitHub token is optional for public repositories, but can raise the API rate limit:
PORT=3000
DEFAULT_REPO=owner/repository
GITHUB_TOKEN=your_github_tokenNever add .env or a token to source control. The token is only sent from the server to GitHub.
Run the built-in Node.js test suite with:
npm testThe tests cover the static dashboard/config endpoints and malformed repository validation without calling GitHub.
GET /api/config— dashboard defaults.GET /api/repo?repo=owner/name— repository overview and health details.GET /api/issues?repo=owner/name&state=open|closed— latest 30 issues.GET /api/pulls?repo=owner/name&state=open|closed— latest 20 pull requests.GET /api/contributors?repo=owner/name— top contributors.GET /api/health?repo=owner/name— repository health data.
The dashboard reads public GitHub data. Authentication, creating or editing issues, and private repository access are not implemented.
The dashboard is a project starter, not a guarantee of acceptance into a Drips Wave program. Before submitting, publish the project in your own repository, include a deployed demo if possible, keep the README and contribution instructions current, and demonstrate real maintenance activity through issues, pull requests, releases, and tests. See CONTRIBUTING.md for the contribution workflow.
GitHub credentials belong on the server. Do not put tokens in frontend JavaScript or commit them to Git.