Kelvin Neo - Project Portfolio Page
Overview
TermiNUS is a CLI (command line interface) program for NUS students who wish to consolidate their NUS academic needs such as schedules, questions and notes for the modules that they are taking. With TermiNUS, it aims to aid students and improve their learning experiences while studying in NUS.
Summary of Contributions
- New Feature: Added
question
which is the ability to add, delete, list and test the user with questions.- What it does: It provides the user a way of storing and managing their questions, as well as running an Active Recall session to test themselves on their own knowledge.
- Justifications:
question
was built to allow users to test themselves using the techniques of Active Recall, which aims to improve their knowledge and memory of the subject. - Highlights: The
test
feature includes a timer that indicates how long the user took to answer each question. The Active Recall portion will also tweak the frequency of the questions appearing based on the feedback the user gives. For example, if the user deems the question as hard, the question would appear more often, and if the user deems the question easy, the question would appear less often.
- New Feature: Added
TerminusLogger
- What it does:
TerminusLogger
wraps aroundjava.util.logging.Logger
and provides helper methods that calls the internalLogger
methods. - Justifications: To provide a unified and simpler logging experience for the entire application,
TerminusLogger
was created to prevent duplicate Logger initialization code. It also disables logging to terminal, and logs only to a file by default. - Highlights: It provides a wrapper function that can print the stack trace into the logger for
WARNING
andSEVERE
cases.
- What it does:
- New Feature: Added
help
andexit
command.- What it does:
help
andexit
commands are basic commands to enable the user to view the commands in the current workspace and exit the program respectively. - Justifications:
help
must print the commands that exist within the specific workspace to prevent the user from being confused and running the commands in the wrong places. Theexit
command is placed at every workspace to allow the user to quit any time, regardless of which workspace they are in.
- What it does:
- New Feature: Added
Terminus
andUi
- What it does:
Terminus
is the main class that runs the main loop of the entire application.Ui
class handles all input and output from the user.
- What it does:
-
Code Contributed: RepoSense Link
- Documentation:
- README.md:
- User Guide:
- Developer Guide:
- Team-based Tasks:
- Beyond Project Team Tasks:
- Reported bugs for another team in PE-D: PE-D Issues
- Reviewed other teams’ User Guide and Developer Guide.
- Tools: