By: Team CoderLifeInsights
Since: Mar 2020
Licence: MIT
- 1. Introduction
- 2. Quick Start
- 3. Features
- 3.1. Viewing help :
help
- 3.2. Adding a person:
add_person
- 3.3. Listing saved data :
list
- 3.4. Editing a person :
edit
- 3.5. Adding a Group:
add_group
- 3.6. Editing a Group:
edit_group
- 3.7. Adding an Event:
add_event
- 3.8. Suggestions:
suggest
- 3.9. Insights:
view
- 3.10. Locating persons by name:
find
- 3.11. Import Life CSV:
import
- 3.12. Export Life CSV:
export
- 3.13. Deleting a Person or a Group :
delete
- 3.14. Clearing all entries :
clear
- 3.15. Exiting the program :
exit
- 3.16. Saving the data
- 3.17. Getting a random person:
random
[coming in v2.0]
- 3.18. Deleting an event:
delete_event
[coming in v2.0]
- 3.19. Editing an event:
edit_event
[coming in v2.0]
- 3.20. Toggle command shortcuts :
toggle shortcuts
[coming in v2.0]
- 3.21. Find group command :
find_group
[coming in v2.0]
- 3.1. Viewing help :
- 4. FAQ
- 5. Command Summary
1. Introduction
[written by Cheng Lit Yaw]
CoderLifeInsights is a CLI (Command Line Interface) driven desktop application that a programmer can use to record his or her social interactions with individual friends, or group of friends.
CoderLifeInsights gives the programmer insights into his or her social life, and provides suggestions to liven up their social life by analysing the social events recorded in CoderLifeInsight through the CLI.
2. Quick Start
-
Ensure you have Java
11
or above installed in your Computer. -
Download the latest
coderlifeinsights.jar
here. -
Copy the file to the folder you want to use as the home folder for your CoderLifeInsights.
-
Double-click the file to start the app. The GUI should appear in a few seconds.
-
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_persons
: lists all contacts -
**
add_person n/John Doe p/98765432 e/johnd@example.com a/John street, block 123, #01-01
: adds a contact namedJohn Doe
to your Life. -
**
delete_person 2
: deletes the 2rd contact shown in the current list -
exit
: exits the app
-
-
Refer to Section 3, “Features” for details of each command.
3. Features
Command Format and Specifications
-
ALL commands are case sensitive.
-
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. -
PERSON_INDEX
refers to theINDEX
of aPerson
in CoderLifeInsights and similarly,GROUP_INDEX
refers to theINDEX
of aGroup
.
3.1. Viewing help : help
Format: help
3.2. Adding a person: add_person
[written by: Ernest Lian Qi Quan]
Adds a person to the CoderLifeInsights
Format: add_person n/NAME p/PHONE_NUMBER e/EMAIL a/ADDRESS [t/TAG]…
A person can have any number of tags (including 0) |
Examples:
Example | Command | Result |
---|---|---|
Add a person John Doe to CoderLifeInsights |
|
John Doe is added to CoderLifeInsights with the input information. |
Add a person Betsy Crowe to CoderLifeInsights |
|
Betsy Crowe is added to CoderLifeInsights with the input information. |
3.3. Listing saved data : list
[written by: Ernest Lian Qi Quan]
Shows a list of recorded information in CoderLifeInsights.
Format: list_LIST_PARAMETER
Examples:
Example | Command | Result |
---|---|---|
Show all persons |
|
Returns a list of the saved persons in CoderLifeInsights. |
Show all groups |
|
Returns a list of the saved groups in CoderLifeInsights. |
3.4. Editing a person : edit
[written by: Ernest Lian Qi Quan]
Edits an existing person in the CoderLifeInsights.
Format: edit INDEX [n/NAME] [p/PHONE] [e/EMAIL] [a/ADDRESS] [t/TAG]…
Examples:
Example | Command | Result |
---|---|---|
Change the phone number and email address of the 1st person |
|
Edits the phone number and email address of the 1st person to be |
Change the name of the second person and remove tags |
|
Edits the name of the 2nd person to be |
3.5. Adding a Group: add_group
[written by: Raivat Bhupesh Shah]
Creates an empty social group with given name.
Format: add_group n/GROUP_NAME m/MEMBER_IDs …
A group can have any number of member_ids (including 0) |
Examples:
Example | Command | Result |
---|---|---|
Create a group |
|
Creates a group named |
Create a group and add members into that group |
|
Creates a group named |
3.6. Editing a Group: edit_group
[written by: Raivat Bhupesh Shah]
Edit a group with a given group index
Format: edit_group GROUP_INDEX n/GROUP_NAME m/MEMBER_IDs
Examples:
Example | Command | Result |
---|---|---|
Change name of 1st group |
|
Changes the name of the group with index 1 in CoderLifeInsights to |
Edit the members in the 1st group |
|
Changes the members of the group with index 1 in CoderLifeInsights to |
Change the name and members of the first group |
|
Changes both the name and members of the group with index 1 in Coder Life Insights. Both values overwritten. |
3.7. Adding an Event: add_event
[written by: Ernest Lian Qi Quan]
Adds an event to a person or a group at the specified INDEX.
Format for adding to a person: add_event ACTIVITY_NAME place/PLACE_NAME time/TIME m/INDEX
Format for adding to a group: add_event ACTIVITY_NAME place/PLACE_NAME time/TIME g/INDEX
Remarks:
-
TIME has to be in entered in the format
HHMM
:
Input for a time of 1 hour and 5 minutes would be:time/105
Input for a time of 9 minutes would be:time/09
-
MM entered has to be between 00 and 60 (01 to 59).
-
The INDEX refers to the index number shown in the displayed person list. The INDEX must be a positive integer.
-
CoderLifeInsights uses 1-indexing.
Examples:
Example | Command | Result |
---|---|---|
Adding an event with a person from the fully listed persons list |
|
Creates an Event Date Night at MBS with a time spent of 3 hours and adds it to the second person in CoderLifeInsights. |
Adding an event with a group from the fully listed groups list |
|
Creates an Event Dancing lessons at Changi Country Club with a time spent of 1 hour and 30 minutes and adds it to the first group in CoderLifeInsights. |
Adding an event to a person after using the find function |
|
Creates an Event Date Night at MBS with a time spent of 3 hours and adds it to the first result returned by the |
3.8. Suggestions: suggest
[written by: Cheng Lit Yaw]
Suggests a person to hang out with, a place to go or an activity to do.
Format: suggest SUGGESTION_PARAMETER
Examples:
Example | Command | Result |
---|---|---|
Look for a person to do something with. |
|
Returns a person to hangout with. |
Look for a place to do something at. |
|
Returns events based on suggested place to go to. |
Look for an activity to do. |
|
Returns events based on suggested activity to do. |
3.9. Insights: view
[written by: Ernest Lian Qi Quan and Mah Cai Jun, Terence]
Displays various insights about the person’s, groups and events stored in Coder Life Insights. (You might need to enlarge the application window for the best view.)
This feature encompasses a range of functions which share the following format:
view INSIGHT_PARAMETER [m/PERSON_INDEX] [g/GROUP_INDEX]
Note that the application will only accept EITHER a person index OR a group index, never both.
Also, whether an index is required or possibly not allowed depends on the insight parameter.
3.10. Locating persons by name: find
[written by: Ernest Lian Qi Quan]
Finds persons whose names contain any of the given keywords.
Format: find KEYWORD [MORE_KEYWORDS]
Examples:
Example | Command | Result |
---|---|---|
Find all persons whose name contains John |
|
Returns |
Find all persons whose name contains 'Betsy', 'Tim' or 'John' |
|
Returns all persons having names |
3.11. Import Life CSV: import
[written by: Cheng Lit Yaw]
Imports your existing Life CSV into the application
Format: import l/LIFE_FILE_PATH g/GROUP_FILE_PATH e/EVENT_FILE_PATH
Examples:
Example | Command | Result |
---|---|---|
Import Life from file "life.csv", group data from "groups.csv" and event data from "events.csv" |
|
Imports your Life from |
Import Life from file "life.csv", "groups.csv" and "events.csv" at specific file path |
|
Imports your Life from |
Import Life from file "life.csv", "groups.csv" and "events.csv" at specific file path |
|
Imports your Life from |
3.11.1. Retrieving File Path
For Windows:
-
Navigate to the file where you saved CoderLifeInsights data files.
-
Click on the address bar of File Explorer window.
-
Refer to the diagram below for reference.
For Mac:
* Navigate to the file where you saved CoderLifeInsights data files.
* Right-click on the CSV File and select Get info
.
* Refer to the diagram below for reference.
3.11.2. CSV File Constraints
For Life.csv
:
Before using the import
command with Life.csv
, please ensure the following headers are present.
-
name
-
phone
-
email
-
address
-
tagged
-
time
-
places
-
activities
Refer to image below for reference:
Tags
, Places
and Activities
should be separated by a semi-colon.
Example:
-
friends;school-mate
-
Orchard;NUS
-
Gym;Rock-Climbing
For Groups.csv
:
Before using the import
command with Groups.csv
, please ensure the following headers are present.
-
name
-
groupId
-
timeSpent
-
memberIDs
-
eventIDs
-
places
-
activities
memberIDs
, eventIDs
should be separated by a semi-colon.
Example:
-
1;2;3
-
5;6
For Events.csv
:
Before using the import
command with Events.csv
, please ensure the following headers are present.
-
eventId
-
activity
-
place
-
withPerson
-
withGroup
-
time
3.12. Export Life CSV: export
[written by: Cheng Lit Yaw]
Exports your existing Life into a CSV file.
Format: export l/LIFE_FILE_NAME g/GROUP_FILE_NAME e/EVENT_FILE_NAME
Remarks:
-
On the very first run of CoderLifeInsights, this command is invalid as there is no saved data and CoderLifeInsights is using a sample data file to display sample contacts. Please proceed to add events, groups or persons before trying to export the information to the respective CSV files.
Examples:
Example | Command | Result |
---|---|---|
Export current life, group and event data |
|
Exports your Life to |
3.13. Deleting a Person or a Group : delete
[written by: Raivat Bhupesh Shah]
Deletes an entity, such as a Person or Group from the CoderLifeInsights
Format: delete_person PERSON_INDEX
(for person)
delete_group GROUP_INDEX
(for group)
Examples:
Example | Command | Result |
---|---|---|
Delete the 2nd person in the fully listed persons list |
|
Deletes the 2nd person in CoderLifeInsights. |
Delete the 2nd group in the fully listed groups list |
|
Deletes the 2nd group in CoderLifeInsights. |
Find a person and delete the person from the list returned |
|
Deletes the 1st person in the results of the |
3.14. Clearing all entries : clear
Clears all entries from the CoderLifeInsights.
Format: clear
3.15. Exiting the program : exit
Exits the program.
Format: exit
3.16. Saving the data
CoderLifeInsights data are saved in the hard disk automatically after any command that changes the data.
There is no need to save manually.
3.17. Getting a random person: random
[coming in v2.0]
[written by: Ernest Lian Qi Quan]
Finds a random person from contacts saved in CoderLifeInsights.
Format: random
Example:
-
random
Returns the name of a random person saved in CoderLifeInsights.
3.18. Deleting an event: delete_event
[coming in v2.0]
[written by: Ernest Lian Qi Quan]
Deletes an event from a person or group saved in CoderLifeInsights.
Format: delete_event EVENTID m/INDEX
or delete_event EVENTID g/INDEX
3.19. Editing an event: edit_event
[coming in v2.0]
[written by: Ernest Lian Qi Quan]
Edit the information of an event with a person or group saved in CoderLifeInsights.
Format: edit_event EVENTID m/INDEX [activity/ACTIVITY] [place/PLACE] [time/TIME]
or edit_event EVENTID g/INDEX [activity/ACTIVITY] [place/PLACE] [time/TIME]
Edits the event’s respective details to the one specified in the command.
3.20. Toggle command shortcuts : toggle shortcuts
[coming in v2.0]
[written by: Cheng Lit Yaw]
Enable toggle command shortcuts to have commands shortened.
Instead of add_group
, ag
would suffice when adding groups to CoderLifeInsights
Format toggle shortcuts
3.21. Find group command : find_group
[coming in v2.0]
[written by: Raivat Bhupesh Shah]
Enable searching for groups with specified keyword. The feature would match the given keyword with group indexes and then update
This feature will be useful when there are at least a certain number of groups.
Format: find_group keyword
.
4. 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 CoderLifeInsights folder.
5. Command Summary
[written by: Cheng Lit Yaw]
Feature | Usage | Example |
---|---|---|
Add Person |
|
|
List |
|
|
Edit |
|
|
Add Group |
|
|
Edit Group |
|
|
Add Event |
or
|
or
|
Suggest |
|
|
View |
|
|
Find |
|
|
Import |
|
|
Export |
|
|
Delete |
or
|
or
|
Clear |
|
|
Exit |
|