Skip to content
 
 

Repository files navigation

πŸš€ DevImpact

License Stars Forks Issues Pull Requests Last Commit

Next.js TypeScript Node.js GraphQL

DevImpact is an open-source platform that compares software developers based on their real impact in the open-source ecosystem β€” not just raw numbers.

It evaluates developers using a smart scoring system that considers:

  • Repository quality πŸ“¦
  • Pull request impact πŸ”€
  • Community contributions πŸ’¬

🌟 Why DevImpact?

Traditional metrics (followers, stars, commit counts) are often misleading.

DevImpact focuses on:

  • βœ… Quality over quantity
  • βœ… Real contributions to valuable projects
  • βœ… Fair comparison between developers

🧠 Scoring System Overview

Each developer is evaluated using three main scores:

πŸ“¦ Repo Score (Builder Impact)

Measures the quality and impact of repositories owned by the user.

Factors include:

  • Stars ⭐
  • Forks 🍴
  • Watchers

πŸ”€ PR Score (Contribution Impact)

Measures contributions to other developers' repositories.

βœ” Only merged PRs are counted βœ” PRs to the user's own repositories are excluded

Factors include:

  • Target repository quality
  • PR size (additions/deletions)
  • Repository popularity
  • Contribution diversity

πŸ’¬ Contribution Score (Community Impact)

Measures community engagement.

Includes:

  • Issues opened in external repositories
  • Discussions participation

⚠️ Does NOT include commits or PRs (to avoid duplication)


πŸ† Final Score

The final score is a weighted combination:

Final Score =
0.45 Γ— Repo Score +
0.45 Γ— PR Score +
0.10 Γ— Contribution Score

πŸ‘‰ The ContributionScore is capped to prevent abuse.


βš–οΈ Key Design Principles

  • ❌ No self-inflation (own PRs excluded)
  • πŸ“‰ Diminishing returns to prevent spam
  • 🎯 External impact is prioritized
  • βš–οΈ Balanced scoring between builders and contributors

πŸ–₯️ Features

  • πŸ” Compare two GitHub users side-by-side
  • πŸ“Š Visual score breakdown (charts & insights)
  • 🧠 Smart ranking system
  • 🌍 Localization support (EN / AR)
  • ⚑ Fast API powered by GitHub GraphQL
  • 🧩 Extensible scoring system

πŸ› οΈ Tech Stack

Frontend

  • Next.js (App Router)
  • TypeScript
  • Tailwind CSS
  • Recharts

API

  • Node.js + Express
  • GitHub GraphQL API
  • Octokit

πŸš€ Getting Started

1. Clone the repo

git clone https://github.com/O2sa/DevImpact.git
cd DevImpact

2. Install dependencies

pnpm install

3. Set up environment variables

Create a .env file:

GITHUB_TOKEN=your_github_token

4. Run the app

pnpm run dev


πŸ“‘ API Example

The compare endpoint accepts one or more username query parameters.

Example request

curl "api/compare?username=devimpact&username=octocat"

Example response

{
  "success": true,
  "users": [
    {
      "username": "octocat",
      "name": "The Octocat",
      "avatarUrl": "https://avatars.githubusercontent.com/u/583231?v=4",
      "repoScore": 87,
      "prScore": 64,
      "contributionScore": 42,
      "finalScore": 73,
      "topRepos": [],
      "topPullRequests": []
    }
  ]
}

🌍 Localization

  • Supported languages: English πŸ‡ΊπŸ‡Έ, Arabic πŸ‡ΈπŸ‡¦
  • Automatically detects user language
  • Allows manual switching
  • Easy to add new languages via /locales

🀝 Contributing

Contributions are welcome!

How to contribute:

  1. Fork the repository
  2. Create a feature branch
  3. Commit your changes
  4. Open a pull request

Contribution ideas:

  • Improve scoring algorithm
  • Add new metrics
  • Enhance UI/UX
  • Add new languages 🌍

⚠️ Limitations

  • GitHub API rate limits
  • Some private contributions are not accessible
  • Scoring system is heuristic (not perfect)

πŸ’‘ Inspiration

DevImpact was created to answer a simple question:

β€œWho really has more impact in open-source?”


⭐ Support

If you like this project:

  • ⭐ Star the repo
  • πŸ› Report issues
  • πŸ’‘ Suggest features

About

A smart platform to compare developers by real impact in open-source β€” not just stars and followers

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages