This project is designed to find the most technically complex repository among all the public repositories of a GitHub user. It utilizes Python, OpenAI APIs, langchain, and Cohere APIs to achieve this functionality.
/github-automated-analysis
|-- .venv
|-- data
| |-- repos_cloned
| |-- test_repos
|
|-- src
| |-- modules.py
| |-- consts.py
| |-- preprocess.py
| |-- evaluate_repo.py
| |-- main.py
|
|-- tests
| |-- test_preprocess.py
| |-- test_evaluate_repo.py
|
|-- docs
| |-- readme.md
|
|-- requirements.txt
|-- .gitignore
To set up and run this project locally, please follow the instructions below:
- Clone the repository:
git clone https://github.com/singhtanmay6735/github-automated-analysis.git
- Navigate to the project directory:
cd github-automated-analysis
- Create a virtual environment (optional but recommended):
python3 -m venv .venv
- Activate the virtual environment:
# For Windows
.venv\Scripts\activate.bat
# For Unix/Linux
source .venv/bin/activate
- Install the dependencies:
pip install -r requirements.txt
-
Set up API credentials:
-
Run the application:
python src/main.py
Once the application is running, you can access it through the localhost. It prompts you to enter a GitHub user URL. Provide the URL of the user whose repositories you want to analyze for technical complexity.
The application will retrieve the public repositories of the user, calculate their technical complexity using GPT, and display the repository with the highest complexity with justification.
This project is licensed under the MIT License. See the LICENSE file for more information.
- This project uses the OpenAI API and the Cohere API for natural language processing tasks.
- Special thanks to the creators and maintainers of the libraries and APIs used in this project.