Project: InternBuddy

InternBuddy provides a 1-stop platform for Computing undergraduates to manage and track their internship applications. It is optimized for typing which Computing undergraduates are comfortable and proficient in, allowing them to fully and efficiently exploit the application’s organisational capabilities. The user interacts with it using a CLI, and it has a GUI created with JavaFX. It is written in Java, and has about 10 kLoC.

Project Contributions

My code contributions can be found on RepoSense

Features and Enhancement

  • New Feature: Refactored delete as delete-index command #100
    • What it does: Allows users to delete multiple internships by their indexes.
    • Justification: This feature allows the user to clear delete multiple internships from the list at once, instead of entering delete multiple times. Users can then keep their internship list nice and tidy.
  • New Feature: Added delete-field command #100
    • What it does: Allows users to delete multiple internships by their fields.
    • Justification: Users may want to mass delete internships from the list when internship application season is over, but still want to archive some for future reference. It is an improvement over clear, which deletes all internship entries.
  • Co-implemented GUI testing for InternBuddy #198, #57
    • With code references from AB4 and Please Hire Us, I managed to implement test cases for UI components such as in the class InternshipCardTest and CommandBoxTest.
    • Worked with my teammate, Eugene, to implement this.
    • GUI testing improved code coverage for InternBuddy.
  • Enhancements to existing features:
    • Added date labels to UI, so that users understand what the dates mean. #57, #138
    • Added a feature where clicking on an internship entry updates the right panel with the selected internship. #150
    • Refactored Status as a set of final constant strings, mitigating misuse of Status strings. #57
    • Fixed a bug where the right panel does not reset after clear. ##128

Documentation

  • About Us page #18
    • Collected my team photos and drafted the About Us page.
  • Project management:
    • Managed release v1.3.2 on GitHub.
    • PRs reviewed (with non-trivial review comments): #118, #58, #32, #30, #20
  • Documentation:
    • User Guide:
      • Contributed to Introduction, Quick Start, Notes about Features, FAQ #26
      • Contributed to implementation of delete-index command #121
      • Contributed to implementation of delete-field command #121
      • Fixed UG bugs from PE-D #195
    • Developer Guide:
      • Contributed to Acknowledgements, Non functional requirements and Glossary #31
      • Contributed to Introduction and About Developer Guide #106
      • Added implementation for delete-field command #122
      • Updated UML sequence diagram for delete-field command #94
      • Wrote design tweaks addressing bugs found in PE dry run #201
  • Community: