Yaohong's Project Portfolio Page

Project ModCraft

ModCraft is a desktop application built for students from National University of Singapore (NUS) to help them track and organise their academic journey. With ModCraft serving as your personal study planner, you can easily:

  • Keep track of the courses you have taken
  • Plan ahead to fulfill graduation requirements
  • Continuously adjust your study plan to new changes

And much more!

ModCraft streamlines the stressful process of course planning by providing a seamless user experience. It is tailored for efficiency through a Command Line Interface (CLI), complemented by the convenience of a Graphical User Interface (GUI) developed using JavaFX.

Given below are my contributions to the project.

  • Code contributed: RepoSense link

  • Project management:

    • Involved in managing releases on GitHub.
  • Enhanced and new features:

    • delete command: allows users to delete a module from the module plan only if it exists.
      • Justification: This feature improves the product significantly because a user can make mistakes in adding modules and ModCraft should provide a way for them to rectify them.
    • calculateCAP command: allows users to calculate the Cumulative Average Point (CAP) of all valid modules in the module plan easily, using their grades and modular credits.
      • Justification: This feature improves the product significantly because calculating and knowing the CAP is very important to NUS students, as it is used in many areas.
        e.g. Calculating CAP for Semester Exchange Programs (SEP) and application for scholarships.
    • calculateMC command: allows users to calculate the total sum of Modular Credits (MCs) of all modules in the module plan, regardless of their grades.
      • Justification: This feature improves the product significantly because calculating and knowing the MCs is very important to NUS students, as it is used in many areas.
        e.g. Calculating MCs for Semester Exchange Programs (SEP) and checking for graduate requirements.
    • Wrote additional test cases: #227
  • Documentation:

    • User Guide:
      • General details: #223, #227, #230
      • Description of ModCraft: #245
      • Description of the edit command and other commands: #245
      • FAQ: #245
      • Glossary. #245
      • Formatting of the User Guide: #258, #260
    • Developer Guide:
      • Implementation details of the delete command, calculateCAP command and calculateMC command: #245
      • Instructions for manual testing: #237
  • Community:

    • PRs reviewed (with non-trivial review comments): 4
    • Contributed to forum discussions:
    • Reported bugs and suggestions for other teams in the class: #309