User Guide
HRConnect is a Command Line Interface (CLI) optimized desktop application designed for storing contacts of potential hires, hiring agencies, and legal consultants. By using commands, HR officers can efficiently organize contacts for their recruiting process.
- Table of Contents
Quick start
-
Ensure you have Java
11
or above installed in your Computer. -
Download the latest
HRConnect.jar
from here. -
Copy the file to the folder you want to use as the home folder for your HRConnect.
-
Open a command terminal,
cd
into the folder you put the jar file in, and use thejava -jar HRConnect.jar
command to run the application. A GUI similar to the below should appear in a few seconds. -
Under the side panel Filter, users can choose the stage to view only applicants who are in that stage, ensuring that only applicants in the selected stage are displayed in HRConnect. Users can opt to select 0, 1, 2, 3 or all 4 radio buttons. Multiple selections are allowed so that HR officers can efficiently view the applicants in the selected stages. Note that selecting 0 or 4 buttons will both give back the full list of applicants in all 4 stages. It is also important to note that using this Filter side panel will overwrite all commands. For instance, if you previously used the
find
command tofind John
, selecting theInterview
Stage button will display the entire list of applicants inInterview
Stage, not limited to those with John in their names. -
The Overview side panel gives users a quick overview on the count of number of applicants in each stage. The Person List showcases the applicants in HRConnect while the Role List showcases the roles of those applicants. 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
: Lists all contacts. -
add /name John Doe /phone 98765432 /email johnd@example.com /address 311, Clementi Ave 2, #02-25 /role SWE /tag friends
: Adds a contact namedJohn Doe
to the HRConnect. -
delete 3
: Deletes the 3rd contact shown in the current list. -
clear
: Deletes all contacts. -
exit
: Exits the app.
-
-
Refer to the Features below for details of each command.
Features
Notes about the command format:
-
When users input a command along with its arguments, it will be trimmed (remove leading whitespace, trailing whitespace, and whitespace in between words when there are more than one space).
-
When parsing arguments: “John Doe “, “John Doe”, and “ John Doe” will all be converted to “John Doe”.
-
When parsing commands: “/FILTER”, “/FILTER Interview ”, “ /FILTER Interview ” will all be converted to “/filter Interview”.
-
Words in angle brackets
<>
are the parameters to be supplied by the user.
e.g. in/filter <Tag>
,<Tag>
is a parameter which can be used as/filter Interview
. -
Items in square brackets are optional.
e.g/name NAME [/tag TAG]
can be used as/name John Doe /tag friend
or as/name John Doe
. -
Parameters can be in any order for
add
andedit
commands.
e.g. if the command specifies/name NAME /phone PHONE_NUMBER
,/phone PHONE_NUMBER /name NAME
is also acceptable. -
Parameters must be in strict order for
filter
,note
,export
, andtag
command. -
Extraneous parameters for commands that do not take in parameters (such as
help
,list
,exit
andclear
) will be ignored.
e.g. if the command specifieshelp 123
, it will be interpreted ashelp
. -
If you are using a PDF version of this document, be careful when copying and pasting commands that span multiple lines as space characters surrounding line-breaks may be omitted when copied over to the application.
Viewing help : help
Shows a message explaining how to access the help page.
Format: help
Add an applicant: add
Adds an applicant to HRConnect.
Format: add /name Name /phone Phone_Number /email Email /address Address /role Role [/note Note] [/tag Tag]…

Examples:
add /name John Doe /phone 98765432 /email johndoe@gmail.com /address John street, block 123, #01-01 /role SWE /note Likes to swim
Listing all applicants : list
Shows a list of all applicants in the HRConnect.
Format: list
Editing an applicant : edit
Edits an existing applicant in the HRConnect.
Format: edit Index [/name Name] [/phone Phone] [/email Email] [/address Address] [/stage Stage]
[/note Note] [/role Role] [/tag Tag]…
- Edits the applicant at the specified
Index
. The index refers to the index number shown in the displayed applicant list. The index must be a positive integer 1, 2, 3, … - At least one of the optional fields must be provided.
- Existing values will be updated to the input values.
- When editing stage, note that the names of Stages can only follow one of the following four options:
- Initial Application
- Technical Assessment
- Interview
- Decision & Offer
- When editing tags, the existing tags of the applicant will be removed i.e adding of tags is not cumulative.
- You can remove all the applicant’s tags by typing
/tag
without specifying any tags after it.
Examples:
-
edit 1 /phone 91234567 /email johndoe@example.com
Edits the phone number and email address of the 1st applicant to be91234567
andjohndoe@example.com
respectively. -
edit 2 /name Betsy Crower /tag
Edits the name of the 2nd applicant to beBetsy Crower
and clears all existing tags.
Locating applicants by name: find
Finds applicants 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
- Applicants matching at least one keyword will be returned (i.e.
OR
search). e.g.Hans Bo
will returnHans Gruber
,Bo Yang
- To accommodate HR officers who deal with a large volume of applicants, executing
find
two or more times without clicking on the buttons on the Filter side panel, or using thefilter
command, or using thelist
command, or clicking onShow All
on theList
Panel will lead to anAND
search between the keywords provided between the differentfind
searches. However, this will not affect theOR
search mentioned previously amongst the keywords provided in the same find command.
e.g. User first executesfind John
and the HRConnect will return all applicants with John in the name. If the user then executesfind Doe
after the previous find command, HRConnect will only return those with both John and Doe in their names.
e.g. User first executesfind John Yu
and the HRConnect will return all applicants with John or Yu in the name. If the user then executesfind Doe
directly after the previous find command, HRConnect will only return those with both John and Doe or those with both Yu and Doe in their names ieJohn Yu
will not get returned. - Clicking on the buttons of Stages on the side panel Filter before executing
Find
command will return applicants that match the keyword and in the selected stages.
Examples:
-
find John
returnsjohn
andJohn Doe
-
find alex david
returnsAlex Yeoh
,David Li
Deleting an applicant : delete
Deletes the specified applicant from the HRConnect.
Format: delete Index
- Deletes the applicant at the specified
Index
. - The index refers to the index number shown in the displayed applicant list.
- The index must be a positive integer 1, 2, 3, …
Examples:
-
list
followed bydelete 2
deletes the 2nd applicant in the HRConnect. -
find Betsy
followed bydelete 1
deletes the 1st applicant in the results of thefind
command.
Filtering applicants by stage : filter
Filter through contact list based on what stage the applicant is in.
Format: filter /stage <ApplicantStage>
- Filters the contact list based on the
<ApplicantStage>
provided. - Possible values for
<ApplicantStage>
areInitial Application
,Technical Assessment
,Interview
,Decision & Offer
.
Examples:
-
filter /stage Interview
filters the contact list to show only applicants in the Interview stage.
Adding notes to applicants by tag : /note
Facilitates the addition of notes or comments to individual applicant entries.
Format: note Index /note <Note>
- Adds a note to the applicant at the specified
Index
. - Incorporate supplementary notes to enrich the applicant’s profile.
- Possible values for
Index
are positive integers. - Possible values for
<Note>
are any non-empty string that provides relevant commentary.
Examples:
-
note 1 /note S/Pass Holder
will add the note “S/Pass Holder” to the applicant identified by Index 1.
Searching applicants by notes : search
Search through contact list based on what note the applicant contains.
Format: search /note <ApplicantNote>
- Searches the contact list based on the
<ApplicantNote>
provided. - Possible values for
<ApplicantNote>
can be any fully filled or partially filled note that exists within an Applicant in the current contact list. - If no note is provided after the prefix
search /note
, the search result will return all applicants
Examples:
-
search /note Promising applicant
searches and fetches applicant with the notePromising applicant
Adding date to notes
- An optional
date
can be attached to the note when using the note command. - When used, it will attach today’s date to the note in
MMMM d, yy
format (e.g March 3, 24). - Format:
note Index /note <Note> /date Flag
- The possible values for
Flag
istrue
andfalse
(case-insensitive). - When
Flag
is set totrue
, adate
will be attached to the note when displayed.
Exporting applicants contacts : export
Use filter or find to isolate the applicants that match the desired stage or role or name. Export will then extract those applicants’ contacts into an external JSON file.
Format: export <FileName>
- Achieve an additional layer of organisation to properly arrange contacts
- Specifying a
<FileName>
that already exists in the “data” folder will overwrite the existing one
Examples:
-
export saved_contacts
will save contacts from the current page into an external JSON file named “saved_contacts.json” under the “data” folder.
Importing applicants : import
Using import
will open a dialog for user to select the json file to import.
The json file must be exported from HRConnect for it to be recognised.
Importing applicants (CLI way) : import_file Filepath
Using import_file
with valid Filepath pointing to the json file will directly import applicants without the dialog.
The json file must be exported from HRConnect for it to be recognised.
Example: import_file C:\tp\data\interesting.json
will import applicants from the interesting.json
in the specified directory.
Creating recurrent email templates : Email
Creates recurring email templates for the user to copy based on the application stage the user is targetting using the Email
button on the Ui.
Clearing all entries : clear
Clears all entries from the HRConnect.
Format: clear
Exiting the program : exit
Exits the program.
Format: exit
Saving the data
HRConnect 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
HRConnect data are saved automatically as a JSON file [JAR file location]/data/HRConnect.json
. Advanced users are welcome to update data directly by editing that data file.

Furthermore, certain edits can cause the HRConnect to behave in unexpected ways (e.g., if a value entered is outside of the acceptable range). Therefore, edit the data file only if you are confident that you can update it correctly.
Updating applicant profile picture (Part of Planned Enhancement)
Each applicant has a Update Picture
button, which enables the user to add a profile picture for a particular applicant.
Note: Due to buggy implementation of this feature, a very specific set of steps needs to be performed in order for this feature to work.
- Before using this feature, use the
list
command at least once. This allows the.json
file that stores the applicant information to be generated. - Press the
Update Picture
button and select an image (only image file types are supported, using other file types may corrupt the application). - After choosing an image, a popup should appear that explains to you that the application needs to be restarted for the changes to be reflected.
- Restart the application, and you should be able to see the profile picture being updated.
- In rare occasions, the feature may not work due to operating system complications.
Command summary
Action | Format, Examples |
---|---|
Add |
add /name Name /phone Phone_Number /email Email /address Address /role Role [/note Note] [/tag Tag]… e.g., add /name James Chow /phone 96622612 /email james@example.com /address 321, Clementi Ave 2, #02-25 /role Junior Engineer /note Likes to swim
|
Clear | clear |
Delete |
delete INDEX e.g., delete 3
|
Edit |
edit Index [/name Name] [/phone Phone] [/email Email] [/address Address] [/stage Stage] [/role Role] [/note Note] [/tag Tag]… e.g., edit 2 /stage Interview
|
Find |
find Keyword [More_Keywords] e.g., find alice bob charlie
|
List | list |
Help | help |
Exit | exit |
Filter |
filter /stage <ApplicantStage> e.g., filter /stage Initial Application
|
Search |
search /note <ApplicantNote> e.g., search /note Promising applicant
|
Note |
note <ApplicationId> /note <Note> e.g., note 1 /note S/Pass Holder
|
Export |
export <FileName> e.g., export saved_contacts
|
Import | import |
Import (CLI) |
import_file Filepath e.g., import_file C:\tp\data\interesting.json
|