🔍 A web app for generating software quality analysis based on hotspot prioritization 🛠️
CodeInspector is a web app that provides software quality analysis based on hotspot prioritization. It takes a repository URL (currently for Java projects) and generates insights on modified files, file churn, complexity, and priority for quality improvement. The app uses Flask for web development, Bootstrap for styling, PyDriller for repository mining, and Plotly for visualizing data.
In order to run the CodeInspector web app, you need to have Python installed on your machine. You can download and install the latest version of Python from the official Python website here.
To clone this repository, follow the steps below:
- Open your terminal and navigate to the directory where you want to clone the repository.
- Run the following command:
git clone https://github.com/ArchontisKostis/CodeInspector.git
This Flask web app requires certain dependencies to be installed. The list of dependencies, along with their versions, are listed in the requirements.txt file. Follow the steps below to install the dependencies:
- Navigate to the cloned repository's directory in your terminal.
- Create a virtual environment (optional but recommended) using the following command:
python -m venv venv
- Activate the virtual environment (if created) using the appropriate command for your operating system: For Windows:
venv\Scripts\activate
For Unix/Linux
source venv/bin/activate
- Install the dependencies using pip with the following command:
pip install -r requirements.txt
This will install all the required dependencies listed in the requirements.txt file into your virtual environment.
After successfully installing the dependencies, you can run the CodeInspector web app locally. Follow the steps below:
- Make sure you are still in the cloned repository's directory and that your virtual environment is active (if created).
- Run the following command:
flask --app app run -h localhost -p 3000
This will start the CodeInspector web app and it will be accessible at http://localhost:3000 in your web browser.
CodeInspector was created by Archontis E. Kostis with the support and guidance of Mr. Alexander Hatzigeorgiou, Dean of the Department of Applied Informatics at University of Macedonia. The project was inspired by a shared passion for improving software quality through data-driven and mining software repositories analysis. The development of this tool would not have been possible without the open-source contributions of the Flask, Bootstrap, PyDriller, and Plotly communities. We are grateful for their efforts in making high-quality software accessible to everyone.