Inspiration

Repo-Rater was inspired by the desire to create a tool that could help developers easily and quickly improve their code quality. Our team saw the potential in combining advanced AI technology with Github's API to provide users with a simple, yet effective solution for performing code analysis and making improvements. We believe that such a tool can help developers save time and effort and produce more efficient and effective code.

What it does

Repo-Rater evaluates and analyzes the user's code using OpenAI to provide an overall rating of code quality, areas of improvement, and a refined version of the code with the suggestions implemented. Users enter a Github repository link and specific file path for analysis and the website provides feedback through a separate terminal to help make their code more efficient.

How we built it

Repo-Rater was built using GitHub API to connect the repository with OpenAI API which is used to analyze and provide feedback. The project runs on Python and the APIs on the back end, and HTML, typescript, and react on the front end, with Flask connecting the two together.

Challenges we ran into

During the process, we wanted to evaluate a user's entire profile and provide an analysis of their overall activity on repositories and projects. However, due to limitations with the GitHub API, we were unable to integrate through an entire profile or repository. As a result, the project aim was restructured to evaluate specific files and code within a repository, requiring the user to now enter the addresses of both the repository and the file directory.

Accomplishments that we're proud of

We are proud of what we have been able to accomplish within the limited timeframe. Time was definitely a big factor in deciding what was feasible and what kinds of features we could implement. We are proud that despite these constraints, we were able to create a functional website that gets accomplishes the basic goal we set out for.

What we learned

We learned through this process that there will always be unpredictable variables or challenges that come up. It is good to come up with contingency plans and be prepared to change direction if things don't go exactly the way we expect. This is a valuable lesson for future projects as we will be more vigilant on the potential complications involved with any project and the importance of prior planning.

What's next for Repo Rater

Moving forward, we would like to implement the features we did not have the capacity to do so during the allotted time frame. This includes adding SonarQube, another AI API, to double-check the suggestions and work done by OpenAI's algorithm. This would help our website provide higher-quality improvements to the user's code and make it a more enticing option than other code checkers available. Additionally, we would implement the ability to evaluate entire GitHub accounts as well as repositories once a workaround to the API limitations has been determined.

Share this project:

Updates