reviewer-recommender

Reviewer Recommender is a Python-based application designed to run different algorithms on a specified GitHub project. The algorithms include RevFinder, ChRev, TurnoverRec, and Sofia. The application fetches data from GitHub using a separate Github-crawler and stores it locally for processing. It also provides functionality for evaluating the algor

https://github.com/ehsan200/reviewer-recommender

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (14.0%) to scientific vocabulary

Keywords

github-reviewer-recommender python recommendation-system reviewer-recommender
Last synced: 6 months ago · JSON representation ·

Repository

Reviewer Recommender is a Python-based application designed to run different algorithms on a specified GitHub project. The algorithms include RevFinder, ChRev, TurnoverRec, and Sofia. The application fetches data from GitHub using a separate Github-crawler and stores it locally for processing. It also provides functionality for evaluating the algor

Basic Info
  • Host: GitHub
  • Owner: Ehsan200
  • License: mit
  • Language: Python
  • Default Branch: main
  • Homepage:
  • Size: 67.4 KB
Statistics
  • Stars: 1
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 1
Topics
github-reviewer-recommender python recommendation-system reviewer-recommender
Created over 2 years ago · Last pushed about 2 years ago
Metadata Files
Readme License Citation

README.md

Reviewer Recommender

This project uses Python and argparse to run different algorithms on a specified GitHub project. The algorithms are RevFinder, ChRev, TurnoverRec, and Sofia.

Prerequisites

You need to have Python and pip installed on your machine. You can download Python from here and pip is included in Python 3.8 and later versions.

Installation

  1. Clone the Github-crawler repository to your local machine:

  2. Navigate to the Github-crawler directory:

bash cd Github-crawler

  1. Run the crawler commands to fetch the data (see help and usage in the Github-crawler):

  2. Once the data has been fetched, set the DATA_BASE_DIR environment variable to the path of the crawled-data directory in the Github-crawler repository.

bash export DATA_BASE_DIR=<path-to-Github-crawler>/crawled-data

  1. Navigate back to the parent directory and clone this repository to your local machine:

  2. Navigate to the project directory:

bash cd reviewer-recommender

  1. Install the required packages:

bash pip install -r requirements.txt

Usage

To run an algorithm on a GitHub project, use the following command:

bash python manager.py --r_owner <owner> --r_name <repo> algo-<algorithm>

Replace <owner> with the GitHub project owner's username, <repo> with the name of the repository, and <algorithm> with the name of the algorithm you want to run. The available algorithms are revFinder, chRev, turnoverRec, and sofia.

If you want to run the project without using cache, add the --no-cache argument:

bash python manager.py --r_owner <owner> --r_name <repo> algo-<algorithm> --no-cache

Evaluation

To evaluate the algorithms, use the following command:

bash python manager.py evaluate --r_owner <owner> --r_name <repo>

Replace <owner> with the GitHub project owner's username, <repo> with the name of the repository.

Data Storage

The data fetched by the Github-crawler is stored in the crawled-data directory. This directory is located in the root of the Github-crawler repository. The data is organized by GitHub project, with each project having its own subdirectory.

The DATA_BASE_DIR environment variable should be set to the path of the crawled-data directory. This allows the algorithms in this project to access the fetched data.

Logs

During the execution of the algorithms, logs are generated to provide some information about the process.

The logs are stored in the logs directory in the root of this repository.

The logs include information such as:

  • Start and end time of each algorithm execution.
  • Steps and decisions made by the algorithms.

To view the logs, navigate to the logs directory and open the desired log file. You can use any text editor to view the contents of the log files.

Built With

Authors

Owner

  • Login: Ehsan200
  • Kind: user

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
- family-names: "Movaffagh"
  given-names: "Ehsan"
- family-names: "Ghazanfari"
  given-names: "Seyyed Alireza"
title: "reviewer-recommender"
version: 1.0.0
doi: 10.5281/zenodo.10568908
date-released: 2024-01-25
url: "https://github.com/Ehsan200/reviewer-recommender"

GitHub Events

Total
Last Year