User Guide
- Introduction
- Quick start
-
Features
- Viewing help :
help -
Adding a person:
add_person - Adding a session:
add_session - Listing all persons/students/tutors/sessions :
list - Viewing a tutor/student :
view_person - Viewing a session :
view_session -
Editing a person :
edit_person - Editing a session :
edit_session - Locating persons by name:
find -
Deleting a person :
delete_person - Deleting a session :
delete_session - Assigning student(s)/tutor to session :
assign - Unassigning people from a session :
unassign - Clearing all entries :
clear - Exiting the program :
exit - Saving the data
- Editing the data file
- Viewing help :
- FAQ
- Command summary
Introduction
EzManage is a desktop app for managing students, tutors and sessions, optimized for use via a Command Line Interface (CLI) while still having the benefits of a Graphical User Interface (GUI). It is named as EzManage as it allows tuition centres managers to easily manage students, tutors and sessions all in one single web application.
Quick start
-
Ensure you have Java
11or above installed in your Computer. -
Download the latest
EzManage.jarfrom here. -
Copy the file to the folder you want to use as the home folder for your EzManage.
-
Double-click the file to start the app. An example of the GUI is shown below. Note how the app contains some sample data.

-
Type the command in the command box and press Enter to execute it. e.g. typing
helpand pressing Enter will open the help window.
Some example commands you can try:-
list persons: Lists all students and tutors. -
add_personpt/student n/John Doe p/98765432 e/johnd@example.com a/John street, block 123, #01-01: Adds a student namedJohn Doeto the Contact List. -
delete_persont/1: Deletes the tutor with the IDt/1from the Contact list. -
assigns/3 t/2 c/1: Assigns student(s) or tutor to a specific session. -
clear: Deletes all students, tutors and sessions. -
exit: Exits the app.
-
-
Refer to the Features below for details of each command.
Features
Notes about the command format:
-
Words in
UPPER_CASEare the parameters to be supplied by the user.
e.g. inadd_person n/NAME,NAMEis a parameter which can be used asadd_person n/John Doe. -
Items in square brackets are optional.
e.gn/NAME [tag/TAG]can be used asn/John Doe tag/friendor asn/John Doe. -
Items with
… after them can be used multiple times including zero times.
e.g.[tag/TAG]…can be used as ` ` (i.e. 0 times),tag/friend,tag/friend tag/familyetc. -
Parameters can be in any order.
e.g. if the command specifiesn/NAME p/PHONE_NUMBER,p/PHONE_NUMBER n/NAMEis also acceptable. -
If a parameter is expected only once in the command but you specified it multiple times, only the last occurrence of the parameter will be taken.
e.g. if you specifyp/12341234 p/56785678, onlyp/56785678will be taken. -
Extraneous parameters for commands that do not take in parameters (such as
help,exitandclear) will be ignored.
e.g. if the command specifieshelp 123, it will be interpreted ashelp.
Viewing help : help
Shows a message explaining how to access the help page.

Format: help
Adding a person: add_person
User can add either a student, or a tutor
Adding a Student to EzManage
Format: add_person pt/student n/NAME p/PHONE_NUMBER e/EMAIL a/ADDRESS [tag/TAG]…
Examples:
add_person pt/student n/Connor Smith p/98765432 e/connors@example.com a/Green street, block 123, #01-01add_person pt/student n/Betsy Crowe e/betsycrowe@example.com a/Newgate Tower p/1234567 tag/Sec 3
Before entering the command:

After entering the command:

Adding a Tutor to EzManage
Format: add_person pt/tutor n/NAME p/PHONE_NUMBER e/EMAIL a/ADDRESS [tag/TAG]…
Examples:
add_person pt/tutor n/John Doe p/98765432 e/johnd@example.com a/John street, block 123, #01-01add_person pt/tutor n/Betsy Crowe e/betsycrowe@example.com a/Prim Street p/1234567 tag/chemistry
Before entering the command:

After entering the command:

Adding a session: add_session
Adds a session to EzManage.
Format: add_session d/DAY t/TIMESLOT su/SUBJECT [tag/TAG] …
- A new session will have a unique session ID assigned after creation.
- DAY should match the format of a valid day in the week.
- TIMESLOT should be in the format
HH:MM to HH:MMand the end time should only be after the start time. - DAY and SUBJECT will be capitalised when displayed but do not have to be capitalised in the input
- Note that while persons added to EzManage must be unique, there can be duplicates of sessions to accomidate multiple sessions of the same subject occurring at once
Examples:
add_session d/Saturday ts/13:00 to 15:00 su/Math tag/Hard!
Before entering the command:

After entering the command:

Listing all persons/students/tutors/sessions : list
Shows a list of all persons/students/tutors/sessions in EzManage.
Formats:
-
list persons- This lists all the persons currently in EzManage
-
list students- This lists all the students currently in EzManage
-
list tutors- This lists all the tutors currently in EzManage
-
list sessions- This lists all the sessoins currently in EzManage
Viewing a tutor/student : view_person
Views an existing tutor/student’s details.
Format: view_person t/ID for tutor or view_person s/ID for student
- Views the tutor/student with the specified tutor ID.
- Tutor’s information such as name, contact number, address etc will be displayed on the left panel
- Sessions assigned to the tutor/student will be displayed on the right panel
Example:
-
view_person t/1views the details of the tutor with tutor ID 1. -
view_person s/1views the details of the student with student ID 1.
Viewing a session : view_session
Views an existing session’s details.
Format: view_session c/ID
- Views the specified session with the specified session ID.
- Left Panel will show the session’s information such as the session ID, day time slot, subject, tags and assigned tutor (if any).
- Right Panel will show the session’s list of assigned students (if any).
Example:
-
view_session c/1views the details of the session with session ID c/1 on the Left Panel and views the list of assigned students (e.g. students s/1, s/2) on the Right Panel.
Before entering the command:

After entering the command:

Editing a person : edit_person
Edits an existing person in EzManage.
Editing a Student in EzManage
Edits an existing student in EzManage.
Format: edit_person s/ID [n/NAME] [p/PHONE] [e/EMAIL] [a/ADDRESS] [tag/TAG]…
- Edits the student at the specified student ID (in the format
s/ID). The student ID can be found from the displayed student list. - At least one of the optional fields must be provided.
- Existing values will be updated to the input values.
- When editing tags, the existing tags of the student will be removed i.e adding of tags is not cumulative.
- You can remove all the student’s tags by typing
tag/without specifying any tags after it.
Examples:
-
edit_person s/1 p/91234567 e/alexy@example.comedits the phone number and email address of the student with the ID ofs/1to be91234567ande/alexy@example.comrespectively. -
edit_person s/2 n/Betsy Crower tag/edits the name of the student with the ID ofs/2to beBetsy Crowerand clears all existing tags.
Before entering the command:

After entering the command:

Editing a Tutor in EzManage
Edits an existing tutor in EzManage.
Format: edit_person t/ID [n/NAME] [p/PHONE] [e/EMAIL] [a/ADDRESS] [tag/TAG]…
- Edits the tutor at the specified tutor ID (in the format
t/ID). The tutor ID can be found from the displayed tutor list. - At least one of the optional fields must be provided.
- Existing values will be updated to the input values.
- When editing tags, the existing tags of the tutor will be removed i.e adding of tags is not cumulative.
- You can remove all the tutor’s tags by typing
tag/without specifying any tags after it.
Examples:
-
edit_person t/1 p/88888888 e/irfanibrahim@example.comEdits the phone number and email address of the tutor with the ID oft/1to be88888888andirfanibrahim@example.comrespectively. -
edit_person t/2 n/Oliver Tan tag/Edits the name of the tutor with the ID oft/2to beOliver Tanand clears all existing tags.
Before entering the command:

After entering the command:

Editing a session : edit_session
Edits an existing session in EzManage.
Format: edit_session c/ID [d/DAY] [ts/TIMESLOT] [su/SUBJECT] [tag/TAG]…
- Edits the session with the specified session ID. The session ID can be found from the displayed session list.
- The session ID has to be a valid session ID i.e. the session has to exist in EzManage.
- At least one of the optional fields must be provided.
- Existing values will be updated to the input values.
- DAY should match the format of a valid day in the week.
- TIMESLOT should be in the format
HH:MM to HH:MMand the end time should only be after the start time. - When editing tags, the existing tags of the session will be removed i.e adding of tags is not cumulative.
- A user can ONLY edit a session’s day and time slot if the session does not have any assigned tutor and assigned students, to avoid potential timeslot clashes when session is edited.
- Unassign students/tutor should be called before editing any session’s timeslot or day.
Examples:
-
edit_session c/1 d/Monday su/BiologyEdits the day and subject of the session c/1 to beMondayandBiologyrespectively. -
edit_session c/2 ts/12:00 to 13:00 tag/HardEdits the timeslot and tag of the session c/2 to be12:00 to 13:00andHardrespectively.
Before entering the command:

After entering the command:

Locating persons by name: find
Finds persons whose names contain any of the given keywords.
Format: find KEYWORD [MORE_KEYWORDS]
- The search is case-insensitive. e.g
hanswill matchHans - The order of the keywords does not matter. e.g.
Hans Bowill matchBo Hans - Only the name is searched.
- Only full words will be matched e.g.
Hanwill not matchHans - Persons matching at least one keyword will be returned (i.e.
ORsearch). e.g.Hans Bowill returnHans Gruber,Bo Yang
Examples:
-
find JohnreturnsjohnandJohn Doe -
find alex davidreturnsAlex Yeoh,David Li
Deleting a person : delete_person
Deletes the specified person from EzManage
Deleting a Student from EzManage
Deletes the specified student from EzManage.
Format: delete_person s/ID
- Deletes the student with the specified
s/ID. - The
s/IDrefers to the student ID shown in the displayed person list.
Examples:
-
delete_person s/2deletes the student with student IDs/2in EzManage.
Before entering the command:

After entering the command:

Deleting a Tutor from EzManage
Deletes the specified tutor from EzManage.
Format: delete_person t/ID
- Deletes the tutor with the specified
t/ID. - The
t/IDrefers to the tutor ID shown in the displayed person list.
Examples:
-
delete_person t/1deletes the tutor with tutor IDt/1in EzManage.
Before entering the command:

After entering the command:

Deleting a session : delete_session
Deletes the specified session from EzManage.
Format: delete_session c/ID
- Deletes the session with the specified
c/ID. - The c/ID refers to the session ID shown in the displayed session list.
Examples:
-
delete_session c/1deletes the session with session ID c/1 in EzManage.
Before entering the command:

After entering the command:

Assigning student(s)/tutor to session : assign
Assigns a student or multiple student and/or a tutor to a specific session.
Formats:
-
assign s/ID… c/ID- This assigns student(s) of
s/ID…to a session ofc/ID - Example :
assign s/2 s/1 c/1assigns students ofs/2ands/1to sessionc/1
- This assigns student(s) of
-
assign t/ID c/ID- This assigns a tutor of
t/IDto a session ofc/ID - Example:
assign t/1 c/1assigns a tutor oft/1to session ofc/1
- This assigns a tutor of
-
assign s/ID… t/ID c/ID- This assigns student(s) of
s/ID…and a tutor oft/IDto a session ofc/ID
- This assigns student(s) of
view_session c/1 before entering the command:

view_session c/1 after entering the command:

Unassigning people from a session : unassign
Unassigns the specified people from a session.
Formats:
-
unassign s/ID… c/ID- This unassigns student(s) of
s/ID…from a session ofc/ID - Example :
unassign s/2 s/1 c/1unassigns students ofs/2ands/1from sessionc/1
- This unassigns student(s) of
-
unassign t/ID c/ID- This unassigns a tutor of
t/IDfrom a session ofc/ID - Example:
unassign c/1 t/1unassigns a tutor oft/1from session ofc/1
- This unassigns a tutor of
-
unassign s/ID… t/ID c/ID- This unassigns student(s) of
s/ID…and a tutor oft/IDfrom a session ofc/ID
- This unassigns student(s) of
view_session c/1 before entering the command:

view_session c/1 after entering the command:

Clearing all entries : clear
Clears all entries from the list of students, tutors and sessions.
Format: clear
Exiting the program : exit
Exits the program.
Format: exit
Saving the data
EzManage data are saved in the hard disk automatically after any command that changes the data. There is no need to save manually.
Editing the data file
EzManage data are saved as a JSON file [JAR file location]/data/persons.json and [JAR file location]/data/session.json. Advanced users are welcome to update data directly by editing that data file.
FAQ
Q: How do I transfer my data to another Computer?
A: Install the app in the other computer and overwrite the empty data file it creates with the file that contains the data of your previous EzManage home folder.
Command summary
| Action | Format, Examples |
|---|---|
| Add | For Person:add_person pt/PERSON_TYPE n/NAME p/PHONE_NUMBER e/EMAIL a/ADDRESS [tag/TAG]… e.g., add_person pt/student n/Betsy Crowe e/betsycrowe@example.com a/Newgate Tower p/1234567 tag/Sec 3For Session: add_session d/DAY ts/TIMESLOT su/SUBJECT [tag/TAG]… e.g. add_session d/Saturday ts/13:00 to 15:00 su/Math tag/Hard!
|
| Clear | clear |
| Delete | For Student: delete_person s/IDe.g., delete_person s/2 For Tutor: delete_person t/IDe.g., delete_person t/1For Session: delete_session c/ID e.g., delete_session c/1
|
| Edit | For Student: edit_person s/ID [n/NAME] [p/PHONE] [e/EMAIL] [a/ADDRESS] [tag/TAG]… e.g., edit_person s/2 n/Betsy Crower tag/ For Tutor: edit_person t/ID [n/NAME] [p/PHONE] [e/EMAIL] [a/ADDRESS] [tag/TAG]… e.g., edit_person t/1 p/88888888 e/irfanibrahim@example.com For Session: edit_session c/ID [d/DAY] [ts/TIMESLOT] [su/SUBJECT] [tag/TAG]…e.g., edit_session c/1 d/Monday su/Biology
|
| Assign |
assign [s/ID]… [t/ID] c/IDe.g., assign s/1 s/2 t/1 c/1
|
| Unassign |
unassign [s/ID]… [t/ID] c/IDe.g., unassign s/1 s/2 t/1 c/1
|
| Find |
find KEYWORD [MORE_KEYWORDS]e.g., find Alex David
|
| List | For All Persons: list persons For All Students: list students For All Tutors: list tutors For All Sessions: list sessions
|
| View | For Student: view_person s/IDe.g. view_person s/1 For Tutor: view_person t/IDe.g. view_person t/1 For Session: view_session c/ID e.g., view_session c/1
|
| Help | help |