By: Team MarvelousBook
Since: Feb 2018
Licence: MIT
- 1. Introduction
- 2. Quick Start
- 3. Concepts Introduction
- 4. Features
- 4.1. Viewing help :
help
- 4.2. Adding a person:
add
- 4.3. Adding a tutee:
addtutee
- 4.4. Listing all contacts :
list
- 4.5. Listing all tutees :
listtutee
- 4.6. Editing a contact :
edit
- 4.7. Locating contacts by category:
findpersonby
- 4.8. Sorting persons by category:
sortpersonby
- 4.9. Deleting a contact :
delete
- 4.10. Adding a tuition task:
addtuition
- 4.11. Adding a personal task:
addtask
- 4.12. Listing all tasks :
listtask
- 4.13. Deleting a task:
deletetask
- 4.14. Locating tasks by category:
findtaskby
- 4.15. Sorting tasks by category:
sorttaskby
- 4.16. Changing calendar view page time unit:
change
- 4.17. Listing entered commands :
history
- 4.18. Undoing previous command :
undo
- 4.19. Redoing the previously undone command :
redo
- 4.20. Clearing all entries :
clear
- 4.21. Exiting the program :
exit
- 4.22. Saving the data
- 4.23. Encrypting data files
- 4.24. View tutee fees `[coming in v2.0]
- 4.25. View tuition progress
[coming in v2.0]
- 4.26. Update tutee fees
[coming in v2.0]
- 4.27. Complete task
[coming in v2.0]
- 4.28. Edit task
[coming in v2.0]
- 4.29. View contact address on Google map
[coming in v2.0]
- 4.30. Select a contact or a task
[coming in v2.0]
- 4.1. Viewing help :
- 5. FAQ
- 6. Command Summary
TuitionConnect (TC) is an integration of a personalised address book, task manager and income tracker for private home tutors.
Stems from our strong passion in simplifying the life of tutors, TuitionConnect introduces features
to aid management of tutee contacts, tuition schedule and income tracking. Moreover, we believe that a thorough connectivity is the
root of simplicity. Hence, there are also features which support the management of your personal contacts and tasks.
TuitionConnect is primarily for tutors who prefer to use a desktop app for managing contacts and tasks.
More importantly, TuitionConnect is optimized for those who prefer to work with a Command Line Interface
(CLI) while still having the benefits of a Graphical User Interface (GUI).
With TuitionConnect’s keyboard shortcuts and productive features, TuitionConnect can get your contact and task management done faster than traditional GUI apps. Interested? Jump to the Section 2, “Quick Start” to get started. Enjoy!
-
Ensure you have Java version
1.8.0_60
or later installed in your Computer.ℹ️Having any Java 8 version is not enough.
This app will not work with earlier versions of Java 8. -
Download the latest
TuitionConnect.jar
here. -
Copy the file to the folder you want to use as the home folder for TuitionConnect.
-
Double-click the file to start the app. The GUI should appear in a few seconds.
ℹ️If "license check has failed" message pops up, simply click "OK". -
Type the command in the command box and press Enter to execute it.
e.g. typinghelp
and pressing Enter will open the help window. -
Some example commands you can try:
-
list
: lists all contacts -
add
n/John Doe p/98765432 e/[email protected] a/John street, block 123, #01-01
: adds a contact namedJohn Doe
to the address book. -
delete
3
: deletes the 3rd contact shown in the current list -
exit
: exits the app
-
-
Refer to Section 4, “Features” for details of each command.
-
Contact : This refers to both the tutee and person.
-
Tutee : This refers to the students you are teaching. Adding a student as tutee requires specific tutee details to be provided. By doing so, it will be easier to organize your contacts using our special features.
-
Person : Other contacts which are not tutee.
-
Tutee Details : These are details that are only owned by tutees, which include tutee’s education level, grade, subject and school.
-
Task : This refers to the activities you want to add into your 'to-do-list'.
Type of Task:-
Tuition task: Teaching a specified tutee in contact list.
-
Personal task: Non-tuition activity.
-
-
Address Book : This refers to the list of contacts located on the most left side of the app.
-
Task List / Schedule : these terms are used interchangeably to refer to the list of tasks located in the middle of the app.
Command Format
-
Words in
UPPER_CASE
are the parameters to be supplied by the user e.g. inadd n/NAME
,NAME
is a parameter which can be used asadd n/John Doe
. -
Items in square brackets are optional e.g
n/NAME [t/TAG]
can be used asn/John Doe t/friend
or asn/John Doe
. -
Items with
…
after them can be used multiple times including zero times e.g.[t/TAG]…
can be used ast/friend
,t/friend t/family
etc. -
Parameters can be in any order e.g. if the command specifies
n/NAME p/PHONE_NUMBER
,p/PHONE_NUMBER n/NAME
is also acceptable.
Adds a person to the address book
Using Command Word:
Format: add n/NAME p/PHONE_NUMBER e/EMAIL a/ADDRESS [t/TAG]…
Using Command Alias:
Format: a n/NAME p/PHONE_NUMBER e/EMAIL a/ADDRESS [t/TAG]…
💡
|
A person can have any number of tags (including 0) |
Examples:
-
add n/John Doe p/98765432 e/[email protected] a/John street, block 123, #01-01
-
add n/Betsy Crowe t/friend e/[email protected] a/Newgate Prison p/1234567 t/criminal
-
a n/Dickson ee p/91234567 e/[email protected] a/Dickson street, block 456, #02-02
Adds a tutee to the address book
Using Command Word:
Format: addtutee n/NAME p/PHONE_NUMBER e/EMAIL a/ADDRESS s/SUBJECT g/GRADE edu/EDUCATION_LEVEL sch/SCHOOL [t/TAG]…
💡
|
|
Warning
|
|
Examples:
-
addtutee n/John Doe p/98765432 e/[email protected] a/John street, block 123, #01-01 s/Economics g/B+ edu/junior college sch/Victoria Junior College
-
addtutee n/Betsy Crowe s/Mathematics g/C e/[email protected] a/Newgate Town p/1234567 t/owesMoney sch/Victoria Institution edu/secondary
-
addtutee n/Dickson ee p/91234567 e/[email protected] a/Dickson street, block 456, #02-02 s/english g/f9 edu/primary sch/Newgate Primary School
Shows a list of all contacts in the address book.
Using Command Word:
Format: list
Using Command Alias:
Format: l
Shows a list of all tutees in the address book.
Using Command Word:
Format: listtutee
Edits existing contact’s details in the address book.
Using Command Word:
Format: edit INDEX [n/NAME] [p/PHONE] [e/EMAIL] [a/ADDRESS] [s/SUBJECT] [s/SUBJECT] [g/GRADE] [edu/EDUCATION_LEVEL] [sch/SCHOOL] [t/TAG]…
Using Comamnd Alias:
Format: e INDEX [n/NAME] [p/PHONE] [e/EMAIL] [a/ADDRESS] [s/SUBJECT] [s/SUBJECT] [g/GRADE] [edu/EDUCATION_LEVEL] [sch/SCHOOL] [t/TAG]…
Keyword | Description |
---|---|
edit |
To call the edit command |
INDEX |
Index number shown in the last person listing. It must be a positive integer 1, 2, 3, … |
INDEX |
The contact at the specified |
ℹ️
|
|
Valid Details to edit for each type of contact:
Person | Tutee |
---|---|
NAME |
NAME |
PHONE |
PHONE |
ADDRESS |
ADDRESS |
--- |
SUBJECT |
--- |
GRADE |
--- |
EDUCATION_LEVEL |
--- |
SCHOOL |
TAG |
TAG |
Warning
|
|
Examples:
-
edit 1 p/91234567 e/[email protected]
Edits the phone number and email address of the 1st contact to be91234567
and[email protected]
respectively. -
e 2 n/Betsy Crower sch/JohnDoe Secondary t/
Edits the name of the 2nd contact (a tutee) to beBetsy Crower
, her school toJohnDoe Secondary
and clears all existing tags (except "Tutee" tag).
Finds contacts whose specified category contain any of the given keywords.
Using Command Word:
Format: findpersonby CATEGORY KEYWORD [MORE_KEYWORDS]
Using Command Alias:
Format: f CATEGORY 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
-
There are 5 categories to pick:
-
1. name
-
2. edu* (for education level)
-
3. grade*
-
4. school*
-
5. subject*
-
-
Categories marked with * are only owned by tutees (tutee details).
-
Only full words will be matched e.g.
Han
will not matchHans
-
Contacts matching at least one keyword will be returned (i.e.
OR
search). e.g.Hans Bo
will returnHans Gruber
,Bo Yang
Examples:
-
findpersonby Name John
Listsjohn
andJohn Doe
-
findpersonby name Betsy Tim John
Lists any contact having namesBetsy
,Tim
, orJohn
-
f grade B B+
Lists all tutee with gradeB
andB+
Sorts your displayed contact list according to a specified category in ascending order (lexicographically).
Using Command Word:
Format: sortpersonby CATEGORY
Using Command Alias:
Format: spb CATEGORY
-
There are 5 categories to pick:
-
1. name
-
2. edu*
-
3. grade*
-
4. school*
-
5. subject*
-
-
Categories marked with * are only owned by tutees. If one of these is selected, all non-tutees will be displayed last after their names are sorted lexicographically.
-
Sorting category types is case insensitive. e.g both
sort name
andsort Name
works fine. -
The sorting is case insensitive. e.g In a case where
sort name
is writen, `angel' is diplayed before 'Ben'. -
The displayed contact list will be sorted; not the entire contact list.
Example:
-
sortpersonby Name
sorts by name lexicographically.
Deletes the specified contact from the address book.
Using Command Word:
Format: delete INDEX
Using Command Alias:
Format: d INDEX
-
Deletes the contact at the specified
INDEX
. -
The index refers to the index number shown in the most recent listing.
-
The index must be a positive integer 1, 2, 3, …
Examples:
-
list
delete 2
Deletes the 2nd contact in the address book. -
f Betsy
d 1
Deletes the 1st contact in the results of thef
command.
Adds a task to TuitionConnect’s schedule
Using Command Word:
Format: `addtuition TUTEE_INDEX DATE TIME DURATION [DESCRIPTION]
PARAMETERS
-
TUTEE_INDEX
-
The associated tutee is chosen by specifying a
TUTEE_INDEX
. The index refers to the index number shown in the left side of person listing. The index must be a positive integer 1, 2, 3, … -
The chosen index must be the index of a Tutee (persons who have 'Tutee' tag). Refer to the addtutee command guide for more information about Tutee.
-
-
DATE
-
Date refers to the date of the tuition.
-
Date must be written in the format of dd/mm/yyyy
-
valid example : 08/03/2018
-
invalid example : 8/3/2018
-
-
-
TIME
-
Time refers to the starting time of the tuition.
-
Time must be written in the format of hh:mm (24-hr format).
-
valid example : 12:00
-
invalid example : 25:00
-
-
-
DURATION
-
Duration refers to the duration of the tuition.
-
Duration must be written in the format of XXhXXm
-
valid example : 1h30m
-
this means that the tuition lasts for 1 hour and 30 minute.
-
-
invalid example : 01h30m
-
the duration in hour cannot have leading zero
-
-
invalid example : 1h60m
-
the duration in minute must be a number between 0 and 59.
-
-
invalid example : 30m
-
a correct duration for a 30 minute tuition is 0h30m.
-
-
-
-
DESCRIPTION
-
Description can be of any format.
-
Leading and trailing whitespaces will be removed.
-
Description is optional. It can be empty.
-
Examples:
-
addtuition 1 10/05/2018 09:00 1h30m Calculus homework page 24
-
addtuition 1 31/12/2018 16:00 0h30m
Adds a personal task to the TuitionConnect schedule
Using Command Word:
Format: `addtask DATE TIME DURATION [DESCRIPTION]+
The parameters (DATE, TIME, DURATION AND DESCRIPTION) have the same structure and limitations as explained in addtask command guide.
Examples:
-
addtask 10/05/2018 09:00 1h30m Outing with friend
-
addtask 31/12/2018 16:00 0h30m
Shows a list of all tasks in the task list.
Using Command Word:
Format: listtask
Using Command Alias:
Format: lt
The purpose of the listtask command is to regenerate
the complete list of tasks for a user in the event that
only a specific set of tasks were displayed.
Deletes a task from the TuitionConnect schedule
Using Command Word:
Format: deletetask TASK_INDEX
-
The task is chosen by specifying a
TASK_INDEX
. The index refers to the index number shown on the left side of the schedule list. The index must be a positive integer 1, 2, 3, …
Examples:
-
deletetask 1
Finds tasks which specified category has value within 2 given boundaries (inclusive) or contain any of the given keywords.
The functionality is determined according to the specified FIND_TYPE.
Using Command Word:
Format: findtaskby CATEGORY FIND_TYPE KEYWORD [MORE_KEYWORDS]
-
PARAMETERS
-
CATEGORY
-
There are 3 categories available:
-
1. month
-
2. year
(coming in v2.0)
-
3. duration
(coming in v2.0)
-
-
-
FIND_TYPE
-
Choice of Find Type determines the behaviour of this command and the subsequent parameters.
-
There are 2 choices of Find Type:
-
1. 'between' : returns tasks within the 2 given boundaries (inclusive).
-
2. 'namely' : returns tasks that match the keywords.
-
-
-
KEYWORDS
-
Keywords given depend on the specified category:
-
1. month
-
months in either M, MM, MMM or MMMM format.
e.g. '1', '01', 'jan' and 'january' are all acceptable. -
several common terms such as 'now', 'today', 'this month', 'current month', 'last month' and 'next month'.
-
-
2. year to be implemented in v2.0
-
3. duration to be implemented in v2.0
-
-
The amount of keywords depend on the specified Find Type:
-
1. between
Exactly 2 different keywords must be provided as the boundary values.ℹ️common terms that refer to a same time are considered as same keywords.
e.g.findtaskby month between today this month
is an invalid command. -
2. namely
Any amount can be provided. If 0 keyword is given, the displayed schedule will be empty.
-
-
Examples:
-
findtaskby month between january current month
Lists all tasks scheduled from January until the current month. -
findtaskby month between November February
Lists all tasks scheduled on November, December, January and February. -
findtaskby month between now last month
Lists all tasks. -
`f month namely 2 06 oct Lists all tasks scheduled on February, June and October.
Sorts your displayed task list according to a specified category in ascending order.
Using Command Word:
Format: sorttaskby CATEGORY
Using Command Alias:
Format: stb CATEGORY
-
There are 3 categories to pick:
-
1. datetime
-
2. month
-
3. duration [coming in V 2.0]
-
-
Sorting category types is case insensitive.
-
Sorting is in increasing order. This means later is placed below the earlier. e.g both
sort month
andsort Month
works fine.
Example:
-
sorttaskby Month
sorts tasks by month in increasing order.
Changes the calendar’s view page into the time unit specified by you.
Using Command Word:
Format: change TIME_UNIT
Time Unit | User input | Description |
---|---|---|
Day |
d |
View the calendar in day |
Week |
w |
View the calendar in week |
Month |
m |
View the calendar in month |
Year |
y |
View the calendar in year |
ℹ️
|
|
Examples:
Lists all the commands that you have entered in reverse chronological order.
Using Command Word:
Format: history
Using Command Alias:
Format: h
ℹ️
|
Pressing the ↑ and ↓ arrows will display the previous and next input respectively in the command box. |
Restores the address book and the task list to the state before the previous undoable command was executed.
Using Command Word:
Format: undo
Using Command Alias:
Format: u
ℹ️
|
Undoable commands: those commands that modify the address book’s and task list’s content ( |
Examples:
-
delete 1
list
undo
(reverses thedelete 1
command) -
delete 1
clear
u
(reverses theclear
command)
u
(reverses thedelete 1
command)
Reverses the most recent undo
command.
Using Command Word:
Format: redo
Using Command Alias:
Format: r
Examples:
-
delete 1
undo
(reverses thedelete 1
command)
redo
(reapplies thedelete 1
command) -
delete 1
redo
Theredo
command fails as there are noundo
commands executed previously. -
delete 1
clear
undo
(reverses theclear
command)
u
(reverses thedelete 1
command)
redo
(reapplies thedelete 1
command)
r
(reapplies theclear
command)
Clears all entries in TuitionConnect.
Using Command Word:
Format: clear
Using Command Alias:
Format: c
TuitionConnect data are saved in the hard disk automatically after any command that
changes the data.
There is no need to save manually.
=== View tutee fees [coming in v2.0]
Views the amount that has to be paid by a tutee.
Address book data are automatically encrypted after any command that changes the data.
Shows the details of tuition provided within several months in the form of a graph.
Updates the remaining balance of the tuition fees of a specific tutee after he or she has paid.
Marks a task as completed. If the task is tuition, fees will automatically be added to the tutee’s fee balance.
Edits date, time, duration or description of an existing task and reflects the changes on the calendar.
Views the location of a specific contact’s address on google map and the shortest route from the current location will be displayed.
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 TuitionConnect folder.
Using Command Word:
* Add add n/NAME p/PHONE_NUMBER e/EMAIL a/ADDRESS [t/TAG]…
e.g. add n/James Ho p/22224444 e/[email protected] a/123, Clementi Rd, 1234665 t/friend t/colleague
* Add Tutee addtutee n/NAME p/PHONE_NUMBER e/EMAIL a/ADDRESS s/SUBJECT g/GRADE edu/EDUCATION_LEVEL sch/SCHOOL [t/TAG]…
e.g. add n/James Ho p/22224444 e/[email protected] a/123, Clementi Rd, 1234665 s/Mathematics g/A edu/junior college sch/National Junior College t/priority
* Clear : clear
* Delete : delete PERSON_INDEX
e.g. delete 3
* Edit : edit INDEX [n/NAME] [p/PHONE_NUMBER] [e/EMAIL] [a/ADDRESS] [s/SUBJECT] [s/SUBJECT] [g/GRADE] [edu/EDUCATION_LEVEL] [sch/SCHOOL] [t/TAG]…
e.g. edit 2 n/James Lee e/[email protected]
* Find Person By : findpersonby CATEGORY KEYWORD [MORE_KEYWORDS]`
e.g. findpersonby name Jake Doe
* Sort Person By : sortpersonby CATEGORY
e.g. sort grade
* List : list
* List Tutee : 'listtutee'
* Help : help
* Add Tuition : addtuition TUTEE_INDEX DATE TIME DURATION [DESCRIPTION]
e.g. addtuition 1 10/05/2018 12:00 1h30m Calculus homework page 24
* Add Task : 'add DATE TIME DURATION [DESCRIPTION]
e.g. addtask 10/05/2018 12:00 1h30m Going out with friends
* List Task : 'listtask`
* Delete Task : 'delete TASK_INDEX`
e.g. delete 1
* Find Task By : findtaskby CATEGORY FIND_TYPE KEYWORD [MORE_KEYWORDS]`
e.g. findtaskby month between April October
* Sort Task By : sorttaskby CATEGORY
e.g. sorttaskby datetime
* Change : change TIME_UNIT
e.g. change w
* History : history
* Undo : undo
* Redo : redo
Using Command Alias:
* Add a n/NAME p/PHONE_NUMBER e/EMAIL a/ADDRESS [t/TAG]…
e.g. a n/James Ho p/22224444 e/[email protected] a/123, Clementi Rd, 1234665 t/friend t/colleague
* Clear : c
* Delete : d INDEX
e.g. d 3
* Edit : e INDEX [n/NAME] [p/PHONE_NUMBER] [e/EMAIL] [a/ADDRESS] [s/SUBJECT] [s/SUBJECT] [g/GRADE] [edu/EDUCATION_LEVEL] [sch/SCHOOL] [t/TAG]…
e.g. e 2 n/James Lee e/[email protected]
* Find Person By : f CATEGORY KEYWORD [MORE_KEYWORDS]`
e.g. f name Jake Doe
* List : l
* Sort Person By : spb CATEGORY
e.g. spb grade
* ListTask : lt
* Sort Task By : stb CATEGORY
e.g. stb datetime
* Help : help
* History : h
* Undo : u
* Redo : r