Project: SmartNus

SmartNUS is a desktop app specifically designed for students to revise for their exams. The user interacts with it using a CLI, and it has a GUI created with JavaFX. It is written in Java, and has about 17 kLoC.

Given below are my contributions to the project.

  • New Feature: Added the Note class and Note command #54
    • What it does: allows the user to add notes to SmartNus
    • Justification: The main functionality of the app is that it’s a revision tool. A revision tool should be able to store thoughts and reminders to de-clutter and help streamline revision.
    • Highlights: This feature opens up many possibilities for expansion as the user can tag notes, and set reminders.
  • Code contributed: RepoSense link

  • Enhancements to existing features:
    • Enhanced the delete command to be able to delete notes and questions (Pull request #92)
    • Enhanced the list command to be able to list notes and questions (Pull request #54)
    • Wrote additional tests for existing features to increase coverage (Pull request #233)
    • Added the functionality to store and load choices from the local json file #35
    • Tweaked outputs of commands to improve user experience.
  • Documentation:
    • User Guide:
      • Added documentation for the features delete and note #236
      • Did cosmetic tweaks to existing documentation of features question, tag #236
      • Standardized the UG command explanation format, enhanced the documentation of Question functionality
    • Developer Guide:
      • Added implementation details of the delete feature.
      • Created class diagrams for the undo feature
      • Added implementation details of the note feature
      • Came up with User Stories and Non-Functional Requirements
  • Team Based Tasks:
    • PRs reviewed and merged PRs
    • Reported bugs for other teams (bugs reported)
    • Coordinated the team meetings
    • Fixed issues raised during the Practical Exam Dry Run