Project: EduEase

EduEase simplifies the management of student contact details, helping private tutors stay organized. It allows them to focus on delivering high-quality teaching while reducing administrative burdens, such as their students’ progress and contacts, thereby enhancing their productivity. 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.

Given below are my contributions to the project.

  • New Feature: Added the ability to filter contacts based on tags.
    • What it does: Allows users to filter their list of contacts by specifying one or more tags. Contacts matching the selected tags will be displayed, making it easier to locate specific groups of people.
    • Justification: This feature enhances the user experience by offering a streamlined way to search for and organize contacts. It adds significant value for users managing large contact lists, ensuring quick accessibility based on relevant criteria.
    • Highlights: Implementing this feature involved designing an efficient filtering algorithm that handles multiple tags seamlessly. A significant challenge was ensuring that every tag object is treated as unique, even if tags share the same name, to maintain data integrity and proper association with contacts.
  • Code contributed: RepoSense link
  • Project management:
    • Managed releases v1.3, v1.4, v1.5 (3 releases) on GitHub
  • Enhancements to existing features:
    • Added new data type to AddressBook to handle tags using UniqueTagList class #41
  • Documentation:
    • User Guide:
      • Added documentation for the features tags (Pull requests #121, #122, #123)
    • Developer Guide:
      • Updated model component to a more OOP version (Pull requests #41, #85, #148)
  • Community:
    • PRs reviewed (with non-trivial review comments): #83, #126
    • Contributed to forum discussions (examples: 1, 2, 3, 4, 5, 6, 7)