Project: NUScheduler

NUScheduler is a desktop app for managing contacts, optimised for use via a Command Line Interface (CLI) while still having the benefits of a Graphical User Interface (GUI). If you can type fast, NUScheduler can get your contact management tasks done faster than traditional GUI apps.

Given below are my contributions to the project.

  • New Feature: Added the ability to delete Profiles. (Pull Request #66)
    • What it does: Allow users to delete a profile from NUScheduler by specifying the index of profile to delete from the displayed list.
    • Justification: This is needed for users who wish to delete profiles that are no longer relevant so that the displayed profile list is free from clutter.
    • Credits: This feature is adapted from code in AddressBook Level-3.
  • New Feature: Added the ability to view all Events. (Pull Request #90)
    • What it does: Allow users to view all events in NUScheduler.
    • Justification: This brings convenience to users who wish to have an overview of all events they have added.
    • Credits: This feature is adapted from code in AddressBook Level-3.
  • New Feature: Added the ability to view all upcoming Events, i.e. events that are starting in the next specified number of days. (Pull Request #93)
    • What it does: Allows users to view all upcoming events which are events that starts on the next specified number of days.
    • Justification: For users with a long list of events, this feature enables them to easily check what events they have in the next few days.
  • Code contributed: RepoSense link

  • Enhancements to existing features: Updated the handling of Email inputs to accept only NUS email domains. (Pull Request #67)
    • What it does: Restrict email inputs to emails with valid NUS email domain.
    • Justification: Our application is catered for NUS students hence only profiles with NUS emails are valid.
  • Enhancements to existing features: Changed the handling of duplicate profiles from comparing Name to comparing Email, Phone and Telegram instead. (Pull Request #75)
    • What it does: Allow Profiles to have the same Name but not that same Email, Phone or Telegram.
    • Justification: Different students might have the same Name but should not share the same contact information.
  • Documentation:
    • User Guide:
      • Added documentation for event -v and event -u. (Pull Request #54, #55)
      • Added use case for deleting a profile. (Pull Request #59)
    • Developer Guide:
      • Updated NFR and Glossary to cater to our project. (Pull Request #56)
      • Updated architecture diagrams to reflect our project design. (Pull Request #99, #188)
      • Added implementation details for delete and view upcoming events commands. (Pull Request #95, #188)
  • Community:
    • Pull Requests reviewed: 11 (GitHub)
    • Pull Request reviewed with non-trivial comments: #83
    • Found 8 bugs in team CS2103T-W15-4’s product during PE-D.