opensource-observer / insights

Insights and exploratory data analysis on the health of open source software ecosystems
Apache License 2.0
20 stars 10 forks source link

Implementation of GitHub Contributions Analysis Toolkit (Bounty submission ) #6

Closed Harsh-Avinash closed 10 months ago

Harsh-Avinash commented 10 months ago

This pull request introduces the GitHub Contributions Analysis Toolkit, a comprehensive suite of Python functions designed to analyze and quantify various aspects of contributions on GitHub. This toolkit is divided into two main components: Project Scoring Functions and User Scoring Functions.

Changes Implemented

  1. Project Scoring Functions:

    • calculate_engagement_index: Evaluates engagement levels of projects or repositories.
    • calculate_activity_level: Measures the activity levels considering contribution frequency and recency.
    • calculate_collaboration_index: Assesses the degree of collaboration within projects or repositories.
    • calculate_impact_factor: Determines the overall impact of projects or repositories.
  2. User Scoring Functions:

    • calculate_user_contribution_score: Calculates a score based on users' total contributions and repository diversity.
    • calculate_user_diversity_index: Measures the diversity of users' contributions across different projects or repositories.
    • calculate_user_influence_score: Estimates users' influence based on the impact of contributed projects or repositories.
    • calculate_user_consistency_score: Evaluates the consistency of users' contributions over time.
    • calculate_user_collaboration_index: Measures users’ involvement in collaborative projects or repositories.

Each function has been carefully designed to provide valuable insights into user contributions, project engagement, activity levels, collaboration, and the overall impact on GitHub projects and repositories.