By: RecruitMe Since: January 2019 Licence: MIT
- 1. Introduction
- 2. Quick Start
- 3. Features
- 3.1. Viewing help :
help - 3.2. Adding a person:
add - 3.3. Listing all persons :
list - 3.4. Editing a person :
edit - 3.5. Filtering Recruit Me:
filter - 3.6. Clearing the filter in Recruit Me:
filter clear - 3.7. Reversing the filter in Recruit Me:
filter reverse - 3.8. Employee approval of candidates:
endorse - 3.9. Locating persons by name:
find - 3.10. Sorting persons:
sort - 3.11. Deleting a person :
delete - 3.12. Selecting a person :
select - 3.13. Listing entered commands :
history - 3.14. Undoing previous command :
undo - 3.15. Redoing the previously undone command :
redo - 3.16. Clearing all entries :
clear - 3.17. Exiting the program :
exit - 3.18. Showing and Updating the
CVfor a Person: - 3.19. Saving the data
- 3.20. Adding Multiple Persons
[coming in v2.0]
- 3.1. Viewing help :
- 4. FAQ
- 5. Command Summary
1. Introduction
Recruit Me is an application for keeping all your company’s applicants in a concise and organized format for easy searching designed to help you find the best candidates.
2. Quick Start
-
Ensure you have Java
9(revision9.01or later) installed in your Computer.Only Java 9 is supported.
-
Copy the file to the folder you want to use as the home folder for your Address Book.
-
Download the latest
addressbook.jarhere. -
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. typinghelpand pressing Enter will open the help window. -
Refer to Section 3, “Features” for details of each command.
3. Features
Command Format
-
Words in
UPPER_CASEare the parameters to be supplied by the user e.g. inadd n/NAME,NAMEis a parameter which can be used asadd n/John Doe. -
Items in square brackets are optional e.g
n/NAME [skill/TAG]can be used asn/John Doe skill/friend position/Systems Analystor asn/John Doe. -
Items with
… after them can be used multiple times including zero times e.g.[skill/TAG]…can be used as(i.e. 0 times),skill/Java,skill/Excel skill/leadershipetc. -
Parameters can be in any order e.g. if the command specifies
n/NAME p/PHONE_NUMBER,p/PHONE_NUMBER n/NAMEis also acceptable.
3.1. Viewing help : help
Format: help
3.2. Adding a person: add
Adds a candidate to Recruit Me
Format: add n/NAME p/PHONE_NUMBER e/EMAIL d/EDUCATION g/GPA a/ADDRESS deg/DEGREE-LEVEL [skill/SKILL]… [position/POSITION]…
Examples:
-
add n/John Doe p/98765432 e/johnd@example.com d/NUS g/3.4 deg/bachelors a/John street, block 123, #01-01 -
add n/Betsy Crowe skill/statistics e/betsycrowe@example.com d/NTU g/2.4 deg/high school a/Newgate Prison p/1234567 skill/Java position/UIDeveloper
3.3. Listing all persons : list
Shows a list of all candidates in Recruit Me. If there is a filtering available, it lists all the persons that passes all the filtering conditions.
Format: list
3.4. Editing a person : edit
Edits an existing candidate in Recruit Me.
Format: edit INDEX [n/NAME] [p/PHONE] [e/EMAIL] [d/EDUCATION] [g/GPA] [deg/DEGREE-LEVEL] [a/ADDRESS] [skill/TAG]… [position/TAG]…
Examples:
-
edit 1 p/91234567 e/johndoe@example.com
Edits the phone number and email address of the 1st person to be91234567andjohndoe@example.comrespectively. -
edit 2 n/Betsy Crower skill/
Edits the name of the 2nd person to beBetsy Crowerand clears all existing tags except for endorsements.
3.5. Filtering Recruit Me: filter
-
It filters the current applicant pool regarding the existing entities of every single person (name, phone, email, address, gpa, education (school), degree level, position, endorsement count or skills).
-
Format:
filter or/and [name<NAME>name] [phone<PHONE>phone] [email<EMAIL>email] [gpa<GPA>gpa] [edu<EDUCATION>edu] [deg<DEGREE-LEVEL>deg] [addr<ADDRESS>addr] [skill<SKILL1, SKILL2, … >skill][pos<POSITION1, POSITION2, … >pos] [end<ENDORSEMENT>end]
For every field, using < or > can cause false results. Please do not use them in filtering criterion texts. All the fields are optional but at least one field should be used.
|
Examples:
-
filter or phone<91234567>phone email<mail@ex>email skill<C++, Java>skill end<2>end deg<4>deg-
Returns the people, whose numbers include
91234567or whose email includesmail@exor who has (contains) at leastC++ or Javain the skills or has at least2 endorsementsor has at leastMaster’s degree.
-
-
filter and name<ale>name addr<street>addr gpa<3.1>gpa pos<Manager, Developer>pos deg<bachelors>deg-
Returns the people, whose name contains
ale(in any uppercase and lowercase format) and whose address containsstreetand who is interested inManager and Developerpositions,has a GPA higher than or equal to3.1and has at leastBachelor’s degree.
-
3.6. Clearing the filter in Recruit Me: filter clear
It clears all the filters in the applicant pool.
Format: filter clear
3.7. Reversing the filter in Recruit Me: filter reverse
It reverses all the filtering conditions and shows the eliminated ones.
Format: filter reverse
3.8. Employee approval of candidates: endorse
Endorses an existing candidate in RecruitMe.
Format: endorse [clear] INDEX n/YOUR NAME
-
Feature for employees to navigate the recruiting platform and choose candidates that they want hired
Examples:
-
endorse 1 n/Steve JobsAdds a blue tag to the candidate at the1index with the textSteve Jobs -
endorse clear 1 n/Steve JobsRemoves 'Steve Jobs' blue tag from the candidate at the1index
3.9. Locating persons by name: find
Finds persons whose names contain any of the given keywords.
Format: find KEYWORD [MORE_KEYWORDS]
Examples:
-
find John
ReturnsjohnandJohn Doe -
find Betsy Tim John
Returns any person having namesBetsy,Tim, orJohn
3.10. Sorting persons: sort
Sorts persons by method described by the given keywords.
Format: sort [reverse] KEYWORD
Accepted KEYWORDs:
name; surname; education; gpa; degree; skills; positions; endorsements; skill number;
position number; endorsement number
Examples:
-
sort education
Returns the persons, with new index numbers, in alphabetical order of their education. -
sort reverse skills
Returns the persons, with new index numbers, in reverse alphabetical order of their first skill. Their first
skill is that which appears first when the person’s skills have been ordered alphabetically.
Methodology:
| CLI Command | Sort Comparison | Sort Effect | Example |
|---|---|---|---|
|
Christian name first, then the surname |
Alphabetical |
|
|
Surname |
Alphabetical |
|
|
Education name |
Alphabetical, case-insensitive |
|
|
GPA |
Decreasing numeric value |
|
|
Degree name |
Highest to lowest: PhD, Masters, Bachelors, Associates, High School |
|
|
Arranges each person’s skills alphabetically and then arranges the people based on their skills |
Alphabetical, case-insensitive |
|
|
Arranges each person’s positions alphabetically and then arranges the people based on their positions |
Alphabetical, case-insensitive |
|
|
Arranges each person’s endorsements alphabetically and then arranges the people based on their endorsements |
Alphabetical, case-insensitive |
|
|
Number of skills |
Decreasing numeric value |
|
|
Number of positions |
Decreasing numeric value |
|
|
Number of endorsements |
Decreasing numeric value |
|
|
Reverses the ordering caused by the KEYWORD |
- |
|
Intelligent Sorting:
It is possible for persons to share the same information (e.g. both have the same GPA). For this situation a subsequent sorting method to sort these persons is chosen based on what the user, wanting a certain initial sort method, is likely to be interested in.
Since persons in the address book cannot have the same full name, this shall always differentiate persons and so is used as the final sorting method.
Initial Sort Method |
Subsequent Sort Method (for persons with same value after first sort method) |
Secondary Subsequent Sort Method (for persons with same value after first and subsequent sort method) |
Name |
- |
- |
Surname |
Name |
- |
Skills, Positions, Endorsements |
Name |
- |
Skills, Positions, Endorsements Number |
Skills, Positions, Endorsements respectively |
Name |
Gpa |
Name |
- |
Degree |
GPA |
Name |
Education |
GPA |
Name |
3.11. Deleting a person : delete
Deletes the specified person from the address book.
Format: delete INDEX
Examples:
-
list
delete 2
Deletes the 2nd person in the applicant pool. -
find Betsy
delete 1
Deletes the 1st person in the results of thefindcommand.
3.12. Selecting a person : select
Selects the person identified by the index number used in the displayed applicant pool.
Format: select INDEX
Examples:
-
list
select 2
Selects the 2nd person in the address book. -
find Betsy
select 1
Selects the 1st person in the results of thefindcommand.
3.13. Listing entered commands : history
Lists all the commands that you have entered in reverse chronological order.
Format: history
|
Pressing the ↑ and ↓ arrows will display the previous and next input respectively in the command box. |
3.14. Undoing previous command : undo
Restores the applicant pool to the state before the previous undoable command was executed.
Format: undo
|
Undoable commands: those commands that modify the applicant pool’s content ( |
Examples:
-
delete 1
list
undo(reverses thedelete 1command) -
select 1
list
undo
Theundocommand fails as there are no undoable commands executed previously. -
delete 1
clear
undo(reverses theclearcommand)
undo(reverses thedelete 1command)
3.15. Redoing the previously undone command : redo
Reverses the most recent undo command.
Format: redo
Examples:
-
delete 1
undo(reverses thedelete 1command)
redo(reapplies thedelete 1command) -
delete 1
redo
Theredocommand fails as there are noundocommands executed previously. -
delete 1
clear
undo(reverses theclearcommand)
undo(reverses thedelete 1command)
redo(reapplies thedelete 1command)
redo(reapplies theclearcommand)
3.16. Clearing all entries : clear
Clears all entries from the applicant pool.
Format: clear
3.17. Exiting the program : exit
Exits the program.
Format: exit
3.18. Showing and Updating the CV for a Person:
Showing Stage:
-
Just running the
selectcommand or clicking on the wanted person opens the CV. -
If there is no CV is available for the person, it shows a placeholder page.
Adding a new CV:
-
After running the application first time and selecting someone in the application, the directories
./data/htmland./data/html/cvshould be created. -
To add a new CV to the application, please create an
HTMLfile in./data/htmldirectory.-
The name of the directory should be the name of the person in lowercase with no-space-separated format (e.g. if the candidate name is Alex Yeoh, the file name should be
alexyeoh.html). -
The content of the HTML is below. to the field in HTML content
[YOUR_JPG_FILE_CV]place the name that you gave to HTML file. But do not add any extension. -
Prepare the CV you want to add in
JPGformat and name with the text that you wrote to[YOUR_JPG_FILE_CV]and place this file to directory./data/html/cv
-
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="DarkTheme.css">
</head>
<body style="background-color:#383838">
<img style="display:block; margin-left:auto; margin-right:auto; width:40%"
src="./cv/[YOUR_JPG_FILE_CV].jpg">
</body>
</html>
Updating a CV:
-
Edit Command:If you change name of a candidate in the application, the name of the HTML file is not automatically updated. Please update the name.-
If you change name of a person that came to the application by default and has a CV, you cannot reach to that person’s CV until you reverse your edit.
-
-
Delete Command:If you delete one person from the application, the HTML and JPG files are not automatically deleted. Please delete them manually if you want those files to be deleted.
What comes in v2.0?
-
Automatic file handling for editing and deleting commands.
-
For addition, path of a JPG image will be taken and the html file will be constructed and JPG file will be copied to the right directory directly by the application.
-
Currently, adding multiple CVs at one is not available, thet will be possible with v2.0.
3.19. Saving the data
Applicant data is saved in the hard disk automatically after any command that changes the data.
There is no need to save manually.
3.20. Adding Multiple Persons [coming in v2.0]
-
Right now, through the application there is no possibility to add multiple persons at once. This feature will come with v2.0.
-
However, there is a way to add multiple persons at once:
-
If you run the application at least once and change some data in it, you will see the directory
./data/addressbook.json. -
It is the
JSONfile that holds every single person on the application. The format is given below. -
As long as the format is correct, you can add as many people as you want or if you have a ready file with the same format, you can replace it directly as long as you rename the file as
addressbook.json. -
The changes made in the file will be shown in the application GUI itself, too.
-
{
"persons" : [ {
"name" : "Claire Smith",
"phone" : "98765432",
"education" : "Oxford",
"gpa" : "2.7",
"degree" : "PHD",
"email" : "claireS@gmail.com",
"address" : "12 Biscuits Way, Oxford",
"tagged" : [ "s:PHP", "s:C#", "s:C++", "e:Elon Musk", "s:Linux", "p:Systems Analyst", "s:Finance" ]
}, {
"name" : "Bruce Wayne",
"phone" : "92875639",
"education" : "Stanford",
"gpa" : "3.6",
"degree" : "Bachelors",
"email" : "bruce@wayne.com",
"address" : "1 Wayne Manor, New York NY",
"tagged" : [ "e:Thomas Wayne", "p:Project Consultant", "s:Cyber Crime", "s:Hardware Testing", "p:Crime Analyst", "s:Finance", "s:Business Analysis" ]
} ]
}
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 application folder.
5. Command Summary
-
Add
add n/NAME p/PHONE_NUMBER e/EMAIL d/EDUCATION g/GPA deg/DEGREE-LEVEL a/ADDRESS [skill/TAG]… [position/TAG]…
e.g.add n/James Ho p/22224444 e/jamesho@example.com d/NTU g/3.1 deg/Bachelors a/123, Clementi Rd, 1234665 skill/Java position/Manager -
Clear :
clear -
Delete :
delete INDEX
e.g.delete 3 -
Edit :
edit INDEX [n/NAME] [p/PHONE_NUMBER] [e/EMAIL] [d/EDUCATION] [g/GPA] [deg/DEGREE-LEVEL][a/ADDRESS] [skill/TAG]… [position/TAG]…
e.g.edit 2 n/James Lee e/jameslee@example.com -
Find :
find KEYWORD [MORE_KEYWORDS]
e.g.find James Jake -
Filter :
-
Usage 1:
filter and [name<NAME>name] [phone<PHONE>phone] [email<EMAIL>email] [gpa<GPA>gpa] [edu<EDUCATION>edu] [deg<DEGREE-LEVEL>deg] [addr<ADDRESS>addr] [skill<SKILL1, SKILL2, … >skill][pos<POSITION1, POSITION2, … >pos] [end<ENDORSEMENT>end]
e.g.filter and name<ale>name gpa<2.6>gpa skill<C++>skill end<2>end email<a@>email -
Usage 2:
filter or [name<NAME>name] [phone<PHONE>phone] [email<EMAIL>email] [gpa<GPA>gpa] [edu<EDUCATION>edu] [deg<DEGREE-LEVEL>deg] [addr<ADDRESS>addr] [skill<SKILL1, SKILL2, … >skill][pos<POSITION1, POSITION2, … >pos] [end<ENDORSEMENT>end]
e.g.filter or phone<9>phone edu<NUS>edu pos<Manager, Developer>pos deg<high school>deg addr<street>addr -
Usage 3:
filter clear -
Usage 4:
filter reverse
-
-
Sort :
sort [reverse] KEYWORD
Valid KEYWORDs:name;surname;education;gpa;degree;skills;positions;endorsements;skill number;position number;endorsement number
e.g.sort name
e.g.sort reverse education -
Endorse :
endorse [clear] INDEX n/NAME
e.g.endorse 1 n/Bill Gates+ e.g.endorse clear 1 n/Bill Gates -
List :
list -
Help :
help -
Select :
select INDEX
e.g.select 2 -
History :
history -
Undo :
undo -
Redo :
redo