User Guide
1. Product Overview
Welcome to MyMods! Let us guide you through the overview of MyMods in this section.
1.1 Table of Contents
1.2 About
Are you a NUS student who wants a clean Command Line Interface (CLI) to keep track of your modules and grades? If yes, then this user guide is for you!
Want to know the common use cases, how to get started or in-depth documentation of all of our 13 key features in MyMods? We got that all covered for you in this user guide.
And yes, that is right! We have 14 key features in MyMods: start
, add
, update
, list
, goal
, recommendSU
,
su
, delete
, done
, find
, progress
, clear
, help
and exit
commands.
You do not need any prior technical knowledge to understand this document, however, you will need to know how to read English though!
Navigating this user guide:
- Tips will be shown in this box:
- Important information will be shown in this box:
-
start
: A grey highlight (called a mark-up) indicates that this is a command that can be typed into the command line and executed by the application.
1.3 Introduction
So what exactly is MyMods? It is a desktop app for tracking modules and grades, optimized for use for students who prefer typing via a Command Line Interface (CLI) while still having the benefits of a Graphical User Interface (GUI). With MyMods, you are able to keep track of your module results efficiently, easily make S/U decisions, and view your academic progress. MyMods is available for the Linux, Unix, Windows XP and Mac OS X operating systems.
1.4 Glossaries
If you do not understand any of the terms or short forms that we used, you can refer to this table:
Term | Description |
---|---|
CAP | Cumulative Average Point |
ddp | Double Degree Programme |
mod | Module |
S/U | Satisfactory / Unsatisfactory option in NUS |
1.5 Getting Started
Installation
- Grab a cup of coffee .
- Ensure you have Java 11 or above installed in your computer .
- Download the last MyMods.jar file from here.
- Place the file in any folder that you want to be the home folder for MyMods.
- Start the web application by double-clicking the file or run it with
java -jar MyMods.jar
. The window (without any modules) similar to the interface shown below will appear.
Check your Java version by typing java -version in the Command Prompt
The data of all of your modules can be found on your local disk. It is located in the “data” folder found at the home folder.
The Interface
This is what MyMods looks like:
2. Key Features
Below is information about the features and commands of MyMods.
Important information about the command format:
- Words in UPPER_CASE are the parameters to be supplied by the user.
- e.g. in add
m/MODULE_CODE
,MODULE_CODE
is a parameter which can be used asadd m/CS2100
.
- e.g. in add
- Items in SQUARE BRACKETS are optional input parameters.
- e.g
m/MODULE_CODE [g/GRADE]
can be used asm/CS2100 g/A
or asm/CS2100
.
- e.g
- Items in SQUARE BRACKETS with trailing ellipsis are optional input parameters (zero, one or multiple instances).
- e.g in
find KEYWORD [KEYWORD]...
, multiple instances of the KEYWORD parameter are accepted.
- e.g in
- Words in lower_case are to be specified exactly.
- In add command format:
add m/MODULE_CODE [g/GRADE] [mc/MODULAR_CREDITS]
,add
,m/
,g/
andmc/
are to be specified exactly.
- In add command format:
- Multiple instances of the same prefix/input field will not throw an error. However,
the app will only read the last valid instance in the input.
- e.g
add m/CS2100 m/CS2103
will add the module CS2103.
- e.g
goal set 1 set 2
will set the goal to 2. - e.g
goal list list
will still list the goals’ levels.
- e.g
- Parameters can be in any order.
- e.g
add m/CS2100 g/A
is the same asadd g/A m/CS2100
.
- e.g
- Command words are case-sensitive and must be in lower_case.
-
add
is not the same asADD
,ADD
would not work as add command.
-
- Prefixes(ending with
/
) are case-insensitive.
-
m/
is the same asM/
.
-
- Parameters(words in UPPER_CASE) are case-insensitive.
-
add m/CS2100
is the same asadd m/cs2100
andadd m/Cs2100
.
-
start Y1S1
is the same asstart y1s1
andstart y1S1
.
-
find cs
is the same asfind CS
.
-
- Adding additional inputs (excluding whitespaces) after commands that do not require parameters will result in an invalid command.
-
list 123
will result in an invalid command.
-
2.1 Summary of Key Features
Command | Format |
---|---|
start |
start SEMESTER |
add |
add m/MODULE_CODE [g/GRADE] [mc/MODULAR_CREDITS] |
update |
update m/MODULE_CODE [g/GRADE] [s/SEMESTER] |
list |
list |
goal |
goal set LEVEL or goal list
|
recommendSU |
recommendSU |
su |
su MODULE_CODE |
delete |
delete MODULE_CODE |
done |
done |
find |
find KEYWORD [KEYWORD]... |
progress |
progress [ddp] |
clear |
clear |
help |
help |
exit |
exit |
2.2 Edit Semester: start
Can’t wait to add your modules into MyMods? You can start modifying the modules by starting a semester!
Format: start SEMESTER
Examples:
start Y2S1
-
start y2S1
- Important information will be shown in a box:
To edit a Semester (e.g. Y2S1):
-
Type
start Y2S1
into the command box, and press Enter to execute it.
-
The result box will display the message:
2.3 Add Module: add
Yes! After starting a semester, we can now add a module to your list.
Format: add m/MODULE_CODE [g/GRADE] [mc/MODULAR_CREDITS]
Examples:
add m/CS1101S
add m/CS1231 g/A
[mc/MODULAR_CREDITS]
is to manually add modules that are not in our database.
This is not recommended. However, to add a module that is not recognised by
MyMods, refer to the warning after the example usage below.
[g/GRADE]
so that the grade will be reflected as NA. Don’t worry, CS/CU modules will not be included
in your CAP calculations and, by NUS standards, S/U is not an option for CS/CU modules.
To add a module (e.g. add CS1101S):
-
Type
add m/CS1101S g/A+
into the command box, and press Enter to execute it.
-
The result box will display the message:
-
You can check that the module is added in the list below:
To add a module that is not in our database(e.g. CS0000):
- Type
add m/CS0000 mc/4
(withmc/MODULAR_CREDITS
) into the command box, and press Enter to execute it.
(note:MODULAR_CREDITS
is the number of modular credits of the module)
- The result box will display the message:
recommendSU
and cannot be S/U-ed using
the command su
. The number of MODULAR_CREDITS cannot be updated using the command update
too.
2.4 Update Module: update
Oops, typed something wrong or want to change something?
Use this update feature to change the module’s grade or semester.
Format: update m/MODULE_CODE [g/GRADE] [s/SEMESTER]
Examples:
update m/CS1101S
update m/CS1101S g/A+
update M/cs1101s G/c s/y2s1
update m/CS1101s S/y2S1
To update a module (e.g. CS2030):
-
Type
update m/CS2030 g/A s/Y1S2
into the command box, and press Enter to execute it.
-
The result box will display the message:
-
Use the command
list
and you can check that the module’s semester and grade are both updated from the list below:
2.5 List all Modules: list
If you want to see all the modules that you have keyed in, use this feature to display the list of your modules and
their respective grades (if any) for all semesters.
Format: list
Examples:
list
list
command displays the modules in all semesters
regardless of which semester you are currently editing.
find
or recommendSU
to list all the modules!
To view all the modules that you have taken:
-
Type
list
into the command box, and press Enter to execute it.
-
The result box will display the message:
-
You can check that all the modules from all semesters are shown in the list below:
2.6 Set Goals: goal
Reach for the stars! Set your goal level according to NUS’ Honours Classification System
or list to show the corresponding levels.
Format: goal set LEVEL
or goal list
Examples:
goal set 2
-
goal list
LEVEL
has to be an integer between 1-6.
The command list
will be ignored if set LEVEL
is present.
LEVEL
available:
-
1
: Highest Distinction (CAP 4.50 ~ 5.00) -
2
: Distinction (CAP 4.00 ~ 4.49) -
3
: Merit (CAP 3.50 ~ 3.99) -
4
: Honours (CAP 3.00 ~ 3.49) -
5
: Pass (CAP 2.00 ~ 2.99) -
6
: Fail (CAP < 2.00)
goal list
:
To set your goal to 2 (CAP 4.00 ~ 4.49):
-
Type
goal set 2
into the command box, and press Enter to execute it.
-
The result box will display the message:
progress
:
2.7 Recommend S/U: recommendSU
Having a headache on what module you should S/U? This feature will ease your headache by recommending which module(s)
from your list to S/U based on your goal, grades and if the module can be S/U-ed.
Format: recommendSU
Example:
recommendSU
To get recommendations on which modules to S/U:
-
Type
recommendSU
into the command box, and press Enter to execute it.
-
The result box will display the message (if there are suitable modules to recommend):
-
Check the module(s) that are recommended to S/U in the list below:
recommendSU
and cannot be S/U-ed
using the command su
.
2.8 S/U Module: su
Didn’t do very well for a module? S/U the module in your list using this feature!
Format: su MODULE_CODE
Examples:
su CS1101S
su CS1231S
To S/U a module (e.g. CS1231):
-
Type
su CS1231
into the command box, and press Enter to execute it.
-
The result box will display the message (if the module can be S/U-ed):
-
The module’s grade has been changed to “SU” as shown in the list below:
mc/
, the command box will display:
2.9 Delete Module: delete
If you want to remove a module from your list, use this feature to delete the module along with its grade
from your list of modules.
Format: delete MODULE_CODE
Examples:
delete CS1101S
To delete a module (e.g. CS1231) from the list:
-
Type
delete CS1231
into the command box, and press Enter to execute it.
-
The result box will display the message:
-
The module CS1231 will be deleted from the list as shown below:
2.10 Exit Semester: done
Finally done with editing the semester?
Don’t forget that you won’t be able to change any modules until you start another semester
(the semester in which you want to edit the modules of)!
Format: done
Example:
done
To stop editing a semester (e.g. Y1S1):
-
Type
done
into the command box, and press Enter to execute it.
-
The result box will display the message:
2.11 Find Module: find
Too many modules in the list? Unable to find a module that you took?
Fret not! Locate it immediately using the find command.
Format: find KEYWORD [KEYWORD]...
Examples:
find CS1101S
find MA
find cs ma
find
only applies to module codes and nothing else! Only the modules which have module
codes containing any of the keywords will be returned. The keywords are case-insensitive.
find CS1231
to find the
module CS1231S or find CS
to find all modules that contain the word ‘CS’.
To search for a module (e.g. CS):
-
Type
find CS
into the command box, and press Enter to execute it.
-
The modules that contain the keyword ‘CS’ will be listed below:
2.12 Progress Report: progress
Want to know how well you are doing relative to your goal? Use this feature for a progress report
that calculates the average CAP required for your remaining modules to achieve your target CAP.
In case you have forgotten the current goal that you have set, it will be shown too!
Format: progress [ddp]
Examples:
progress
progress ddp
To calculate the CAP required to achieve your goal:
-
Type
progress
into the command box, and press Enter to execute it.
-
The result box will display the message:
2.13 Clear All: clear
Want to delete everything but too lazy to delete them one by one? Here is a command to reset everything (deletes all modules)!
Format: clear
Example:
clear
To clear everything:
- Type clear into the command box and press Enter to execute it.
- A confirmation window will pop up as shown:
- After clicking ‘Yes’, the command result will show:
2.14 Get Help: help
If you are lost, this command will give you a summary of the command formats.
Format: help
Example:
help
To seek help:
-
Type
help
in the command box, and press Enter to execute it.
-
The result box will display the message with an additional pop-up window:
2.15 Exit Application: exit
Exits the application.
Format: exit
Example:
exit
To exit the application:
-
Type
exit
into the command box, and press Enter to execute it.
-
MyMods will close and exit.