Cogitate is a free and open source tool written in Python. It is designed to evaluate the level of contributions for members of a GitHub repository. GatorCogitate generates a score for members based on a variety of metrics including:
- Lines added
- Lines removed
- Lines Deleted
- Pull Requests
- Issue Tracker
- Teamwork Performance
These metrics are combined into an overall score for the user.
Note: This tool is alpha software. Please contact us if you intend to run it in production.
1. Clone the GatorCogitate source code onto your machine.
With HTTPS:
git clone https://github.com/GatorCogitate/cogitate_tool.git
Or with SSH:
git clone [email protected]:GatorCogitate/cogitate_tool.git
2. Install Pipenv (Recommended)
Documentation for installing pipenv can be found Here.
After pulling the repo, use pipenv shell
in cogitate_tool/
to enter the virtual
environment. Use exit
to exit. Under the virtual environment, use
pipenv install <package_name> --dev
to install new packages for development.
Here is a good tutorial on how to use pipenv
.
Otherwise, all dependencies will need to be installed locally with the commands:
python3 -m pip install --upgrade pip
python3 -m pip install -e
Run the command pipenv python run src/cogitate.py
in the root directory.
When prompted, press Enter
to leave the repository path as default.
Note: Any users that do not wish to develop the tool can stop reading here.
When under development, always install the virtual environment first by using
pipenv install --dev
, then run the developing program by using
pipenv run python program_name
.
The purpose of script is to automate the running or testing process. To make the
scripts take effect, add the following code to the Pipfile
:
[scripts]
command_name = "./scripts/script_name.sh"
Here the command_name
is the command you want to use when running the project.
For example, if the command_name
is cogitate
, the we can use pipenv run cogitate
.
The homepage for argparse
.
-l
or--link
Cogitate a repo by the url of the repo.-t
or--token
Github user token.-r
or--repo
User's repository.-s
or--state
State of the issue.
The homepage and documentation
for PyDriller
.
The available attributes can be found at their homepage.
- Must be in the
cogitate_tool
folder. - Before you run the program make sure you have installed the dev packages.
- Run the following command
pipenv run python src/data_collection.py
- Enter the name of the
.json
you would like to write the data to. - If you want to use the current repository press
ENTER
, otherwise enter URL/path to other repository.