Inspiration: Merge Master was born out of the problem statement of developers making unnecessary pull requests which made the life of repository managers troublesome, this also helps the new developers to get a basic idea of what is being pushed in a particular pull request.
What it does: A chrome extension that gives the summary of the pull requests in github and also the line by line explanation of each line of code. In background it works on users gemini api.
How we built it: We built it with react and vite and basic message passing between background file and contentScript and gemini. It scrapes the code from github passes it to gemini and gemini generates a response for it and shows it on the screen.
Challenges we ran into: One of the main challenges we encountered was integrating seamlessly with GitHub's interface while ensuring stability and performance. We also faced difficulties in parsing and interpreting code changes accurately to provide meaningful explanations. Additionally, optimizing the interaction with the Gemini API posed technical challenges, requiring careful consideration of rate limiting and data processing.
What we learned: we learned how the chrome extension works a, how the manifest.json, background ,contentScript and popUp talk with each other using message passing. We read and learned about chrome apis like chrome.tabs.onUpdate. I used this api in my background file for extension.
What's next for Merge Master: Moving forward, we aim to further enhance Merge Master's functionality and usability based on user feedback and evolving developer needs. This includes refining the summarization and explanation algorithms, expanding compatibility with different programming languages and frameworks, and exploring additional features to facilitate collaboration among team members. We're committed to continually improving Merge Master to empower developers and streamline the code review process.
Built With
- chromeextension
- geminiapi
- javascript
- react
- vite
Log in or sign up for Devpost to join the conversation.