Inspiration

Introductory and upper-level programming courses tend to have varying code hygiene guidelines to prepare students for the style guide requirements that they will have to follow when working in industry. Even when one has mastered the technical concepts, assignment points are easily lost from minor style errors on homework and projects because of forgetting or simply being unaware of meticulous requirements. We wanted reduce the frustration over the extra hours spent over the amount of points lost while still helping students to become familiar with following a healthy code style guide.

What it does

Hygiene Buddy takes in a user's custom style guide in full. When accessed as an extension in VS Code, checks a user's program line-by-line and generates reminders as opposed to fixing the user's code. Also, Hygiene Buddy acts as the old arcade-like non-player-character to keep the process more interactive and students willing to adapt to code hygiene requirements.

How we built it

We leveraged Google’s Gemini API to generate suggestions based on the user-inputted style guide. Our initial prototype was developed in Python to embody the personality of our assistant, inspired by classic old-arcade NPCs. Then, after creating this proof of concept, into transitioned to a JavaScript framework for the Visual Studio Code extension, incorporating web UI/UX design elements to incorporate an arcade-themed assistant.

Challenges we ran into

As a novice team, we faced a steep learning curve with API integrations and we learned about essential industry tools for collaboration, such as virtual environments, mastered Git for version control, and utilized VS Code’s Live Share feature for real-time collaboration. We navigated how to build IDE extensions because of the lack of documentation for extensions to support AI, and learn integrate synchronization across frameworks. A backend part of Visual Studios extension host processes isn't wanting to work with

Accomplishments that we're proud of

We are pretty proud of our project, seeing as we only had around 24 hours to create a full VSCode extension, in which no member of our team was familiar with many of the tools that we decided to work with. Though Hygiene Buddy isn't quite what we had imagined, it is still pretty close!

What we learned

We learned about how to use various new tools, such as APIs, different libraries, and how to use the documentation to implement these resources as part of a larger project.

What's next for Hygiene Buddy

After complete integration of the API to the front-end user interface, we can expand the project in multiple ways. We look forward to creating similar plug-ins/extensions for other IDEs like Eclipse and IntelliJ. In future development, we hope to customize the font and provide text for better accessibility, or allow the buddy to change the font of the code for the user, too. Additionally, we can add text-to-speech functionality for students who are blind or juts prefer that interactivity. We can even monetize by charging students who use the service to customize the character, colors, or number of suggestions that the Hygiene Buddy provides.

Built With

Share this project:

Updates