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
11
or above installed in your Computer. -
Download the latest
EzManage.jar
from 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
help
and pressing Enter will open the help window.
Some example commands you can try:-
list persons
: Lists all students and tutors. -
add_person
pt/student n/John Doe p/98765432 e/johnd@example.com a/John street, block 123, #01-01
: Adds a student namedJohn Doe
to the Contact List. -
delete_person
t/1
: Deletes the tutor with the IDt/1
from the Contact list. -
assign
s/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_CASE
are the parameters to be supplied by the user.
e.g. inadd_person n/NAME
,NAME
is 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/friend
or 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/family
etc. -
Parameters can be in any order.
e.g. if the command specifiesn/NAME p/PHONE_NUMBER
,p/PHONE_NUMBER n/NAME
is 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/56785678
will be taken. -
Extraneous parameters for commands that do not take in parameters (such as
help
,exit
andclear
) 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-01
add_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-01
add_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:MM
and 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/1
views the details of the tutor with tutor ID 1. -
view_person s/1
views 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/1
views 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.com
edits the phone number and email address of the student with the ID ofs/1
to be91234567
ande/alexy@example.com
respectively. -
edit_person s/2 n/Betsy Crower tag/
edits the name of the student with the ID ofs/2
to beBetsy Crower
and 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.com
Edits the phone number and email address of the tutor with the ID oft/1
to be88888888
andirfanibrahim@example.com
respectively. -
edit_person t/2 n/Oliver Tan tag/
Edits the name of the tutor with the ID oft/2
to beOliver Tan
and 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:MM
and 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/Biology
Edits the day and subject of the session c/1 to beMonday
andBiology
respectively. -
edit_session c/2 ts/12:00 to 13:00 tag/Hard
Edits the timeslot and tag of the session c/2 to be12:00 to 13:00
andHard
respectively.
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
hans
will matchHans
- The order of the keywords does not matter. e.g.
Hans Bo
will matchBo Hans
- Only the name is searched.
- Only full words will be matched e.g.
Han
will not matchHans
- Persons matching at least one keyword will be returned (i.e.
OR
search). e.g.Hans Bo
will returnHans Gruber
,Bo Yang
Examples:
-
find John
returnsjohn
andJohn Doe
-
find alex david
returnsAlex 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/ID
refers to the student ID shown in the displayed person list.
Examples:
-
delete_person s/2
deletes the student with student IDs/2
in 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/ID
refers to the tutor ID shown in the displayed person list.
Examples:
-
delete_person t/1
deletes the tutor with tutor IDt/1
in 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/1
deletes 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/1
assigns students ofs/2
ands/1
to sessionc/1
- This assigns student(s) of
-
assign t/ID c/ID
- This assigns a tutor of
t/ID
to a session ofc/ID
- Example:
assign t/1 c/1
assigns a tutor oft/1
to 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/ID
to 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/1
unassigns students ofs/2
ands/1
from sessionc/1
- This unassigns student(s) of
-
unassign t/ID c/ID
- This unassigns a tutor of
t/ID
from a session ofc/ID
- Example:
unassign c/1 t/1
unassigns a tutor oft/1
from 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/ID
from 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 3 For 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/ID e.g., delete_person s/2 For Tutor: delete_person t/ID e.g., delete_person t/1 For 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/ID e.g., assign s/1 s/2 t/1 c/1
|
Unassign |
unassign [s/ID]… [t/ID] c/ID e.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/ID e.g. view_person s/1 For Tutor: view_person t/ID e.g. view_person t/1 For Session: view_session c/ID e.g., view_session c/1
|
Help | help |