What inspired us to build it?

If you used an open source tool, you might want to contribute to it by fixing issues. However, it might be hard to sort through thousands of issues to find ones that suit your programming level, skills, and interests. This project was made to make it easier to get started and choose an issue.

What does it do, exactly?

Given a GitHub repository URL, the project scans the issues by title and uses AI to create categories. A user can then choose from these categories to display all the matching issues. When an issue is clicked on, the AI uses the issue details to generate a summary.

How did we build it?

We outlined some requirements for the projects, and what the user may want to do. Since there were many requirements for the software that we established, we also had to prioritize requirements between ones that are essential to the core functions of the software vs. ones that will help some of the functions of the software, but can live without at this iteration. For example, it was essential to sort and categorize issues, but not essential for the project to work with any repository, given by a URL field. For our initial test cases, we used this repository, but we were able to expand it to all repositories. Since we only had one and a half days to develop this project, we had to streamline the requirements and design phases - taking us just an hour to finish - and immediately start development. We used Claude Code to streamline the development & testing phases while making sure we understood how different components worked. Additionally, we also learned how to use the Claude Code CLI to send user input to the terminal, and create a chat - similar to how we chat with Claude or ChatGPT - for Claude (Haiku) to analyze the user input, and generate a user-friendly output. Using these resources, we were able to finish our project’s core functionality in a reasonable amount of time so that we could compile and finalize our work by the deadline.

What were some challenges we ran into?

One challenge we ran into was distributing the work evenly. Our project mainly consists of a back end that does the AI functionality, and a front end that displays the back end’s results to the user. We solved this by all developing different things, and combining the best elements of each. Another issue was that we used AI to get our results, meaning that the program only works for people with Claude. If we continued this project, we could fix this by making an API to integrate it with any LLM.

What are some accomplishments that we're proud of?

  • Working together as a team to create a product prototype
  • Being persistent
  • Trying new things/tech stacks
  • Creating a useful application for developers

What did we learn?

Some of the main things we learned were:

  • Using HTML and Next.js to create and run websites
  • Using JSON to establish schemas
  • Using GitHub not just for version control, but also for looking at what each person did, and accepting/denying pull requests
  • Establishing software requirements/specs in a short time period
  • The many different uses of AI agents such as Claude Code

What's next for GitHub Repo Issue Analyzer?

One thing we plan for the future is to actually use APIs for the chatbots, so that people don't need Claude Code to use this tool. This is done all while trying to make sure accuracy is still maintained; we do not want the model producing inaccurate information because we chose a model that is deprecated (in an attempt to save costs). We also plan to allow users to choose which repository they want issue analysis on. This is meant to analyze almost all public repositories - with the exception of some that don't use issues (not sure why).

Built With

Share this project:

Updates