LoveBook, is a dating-focused application, revolving around providing serial daters with a convenient and enjoyable tool to enhance their dating experiences. Featuring user preferences management, date organization, customizable filtering options and best match algorithms, LoveBook enhances the efficiency and effectiveness of your online dating journey.
Term | Definition |
---|---|
Date | A person that the user is interested in and is currently seeing. |
Metric | A certain characteristic of a date. (e.g. Gender, Height) |
Command | Text that the user types into the application to perform an action. |
Parameter | A value that the user provides to the application when executing a command. (e.g. ingender/M M is a parameter) |
GUI | Graphical User Interface |
CLI | Command Line Interface |
Mainstream OS | Windows, Linux, Unix, OS-X |
To provide you with relevant suggestions on how to use the commands as well as address potential confusions when using these commands. | |
To inform you of some unintended or unexpected consequences that may occur when you use the commands. |
Scroll back to Table of Contents
As you navigate through the application, you may come across certain symbols depicting your date's gender and horoscope. Here's a quick guide to help you understand what they mean.
Gender | Symbol |
---|---|
Male | |
Female |
Horoscope | Symbol | Birthday Range |
---|---|---|
Aries | March 21 - April 19 | |
Taurus | April 20 - May 20 | |
Gemini | May 21 - June 20 | |
Cancer | June 21 - July 22 | |
Leo | July 23 - August 22 | |
Virgo | August 23 - September 22 | |
Libra | September 23 - October 22 | |
Scorpio | October 23 - November 21 | |
Sagittarius | November 22 - December 21 | |
Capricorn | December 22 - January 19 | |
Aquarius | January 20 - February 18 | |
Pisces | February 19 - March 20 |
Scroll back to Table of Contents
11
or above installed in your Computer.LoveBook.jar
from here.If you're new to this program, the initial screen might appear a bit daunting. Don't fret; let's explore the various elements of the LoveBook interface together. We suggest enlarging the program window for a clearer perspective, allowing you to view more content.
Here's the detailed breakdown of the LoveBook screen:
File
and Help
options. Click on File
to access the Exit
option.
Click on Help
to access the Help
option.Enter
to execute the command.Now that you are familiar with the layout of LoveBook, we recommend you try the following steps to develop a feel for the core features of LoveBook.
So you've just started dating. How do you begin using this app?
Let's say you went out on a date with John. Throughout your date you find out key things about him, he's 123cm tall, earns 3k a month, his horoscope is Libra. Here you can add John to LoveBook using the add command:
In the command box, enter add name/John Doe age/21 gender/M height/123 income/3000 horoscope/Libra
and press
the enter
key.
This will add John to LoveBook.
Let's imagine you've added a couple of dates to the LoveBook already. It should look something like this now:
With so many dates you might want to start keeping tabs on dates that are perhaps more exceptional. Fret not, star dates
as you go along
in your journey. Here you can star John for instance, using the star command:
Enter star 2
.
This will star John.
With so many dates, you might want to start filtering down to the metrics that matter. Perhaps you seek someone younger,
simply filter for
a specific age. Here you can filter for an age of 21 for instance, using the filter command:
Enter filter age/21
.
This will filter for John.
Well, maybe you are indecisive as a serial dater, and you want a third party opinion. Fret not, simply begin by keying
in your preferences using the
setPreferences command:
Enter setP age/22 height/130 income/3200 horoscope/Libra
This will set your preferences like so:
And here it is, to get the match of your dreams, simply use the bestMatch command:
Enter bestMatch
The tutorial shows you what a typical workflow might look like on LoveBook. Do continue to peruse the commands section which contains other commands that, while not worth covering in a quick start tutorial, are certainly important to using LoveBook as a whole. Here's to you embarking on your LoveBook journey!
Scroll back to Table of Contents
UPPER_CASE
are the parameters to be supplied by the user.edit INDEX METRIC/NEW_ARG
, INDEX
, NEW_ARG
and METRIC
are parameters which can be used as
edit 2 income/3000
.age/AGE [horoscope/HOROSCOPE]
can be used as age/22 horoscope/ARIES
or as age/22
.name/NAME age/AGE
, age/AGE name/NAME
is also acceptable.star 9
is valid, but star 09
is invalidhelp
, list
, exit
and clear
)
will be ignored.help 123
, it will be interpreted as help
.The following table shows the list of metrics and their respective constraints.
Metric | Prefix | Constraints |
---|---|---|
Name | name/ | Name can only contain letters, numbers and spaces. It must not be left blank. |
Age | age/ | Age should be a positive integer between 18 and 150 (inclusive). |
Gender | gender/ | Gender should be either M or F. It is case sensitive. |
Height | height/ | Height should be a positive integer in cm between 100cm and 250cm (inclusive). |
Income | income/ | Income (per month) should be a positive integer in SGD less than or equal to a million. |
Horoscope | horoscope/ | Horoscope should be a valid zodiac sign. It is case insensitive. |
add
Adds a date to the LoveBook.
All parameters are compulsory.
The date added must have a unique name that is not already in the LoveBook.
Format: add name/NAME age/AGE gender/GENDER height/HEIGHT horoscope/HOROSCOPE income/INCOME
Example: add name/John Doe age/21 gender/M height/123 income/3000 horoscope/Libra
Expected output: New date added: John Doe; Age: 21; Gender: M; Height: 123; Income: 3000; Horoscope: LIBRA
Scroll back to Table of Contents
edit
Edits a date in the specified index in the LoveBook.
Format: edit INDEX [name/NAME] [age/AGE] [gender/GENDER] [height/HEIGHT] [income/INCOME] [horoscope/HOROSCOPE]
gender, age, horoscope, name, height, income
only.Examples:
edit 1 name/John
(editing 1 metric)edit 1 name/John horoscope/Cancer
(editing 2 metrics)edit 1 horoscope/Cancer name/John
(sequence doesn't matter)Expected Output: Edited Date: John; Age: 21; Gender: M; Height: 123; Income: 3000; Horoscope: LIBRA
Scroll back to Table of Contents
delete
Deletes the specified date from the LoveBook.
Format: delete INDEX
The index must be a positive integer, and be within the range of the recorded dates. For example, if there are 3 Dates in LoveBook, the indices are 1, 2 and 3.
Example: delete 1
Expected output: Deleted Date: Ben Brown; Age: 21; Gender: F; Height: 194; Income: 6000; Horoscope: GEMINI
Scroll back to Table of Contents
list
Shows a list of all dates in the LoveBook.
Format: list
Expected output: Listed all Dates
Scroll back to Table of Contents
clear
Clears all dates in the LoveBook.
This command is irreversible. All data will be lost. Please use this command with caution.
Format: clear
Expected output: LoveBook has been cleared!
Scroll back to Table of Contents
star
Stars a date in the LoveBook.
Format: star INDEX
Example: star 1
Expected output: Starred Date: John Doe; Age: 21; Gender: F; Height: 245; Income: 3000; Horoscope: LIBRA
Scroll back to Table of Contents
unstar
Unstars a date in the LoveBook.
Format: unstar INDEX
The index must be a positive integer, and be within the range of the recorded dates. For example, if there are 3 Dates in LoveBook, the indices are 1, 2 and 3.
Example: unstar 1
Expected output: Unstarred Date: John Doe; Age: 21; Gender: M; Height: 123; Income: 3000; Horoscope: LIBRA
Scroll back to Table of Contents
find
Finds a date in the LoveBook by a specific name(s)
Format: find NAME [MORE_NAMES]
More names can be added to the command line, and the search will be conducted for all names provided.
Example:
find Cleon
find Cleon John
Expected Output: Lists the dates with the name(s) specified
Scroll back to Table of Contents
filter
Filters the dates in the LoveBook by a specific metric.
Format: filter METRIC/ARG
gender, age, name, height
onlyfilter gender/M age/21
filter xx gender/M
works as well, where xx is not a metricWhen filtering dates by a valid metric and an invalid metric, the valid METRIC/ARG pair will be used to filter the dates. Note that the invalid metric will be ignored and there will be no checking of the validity of the invalid metric value.
Example:
filter name/Cleon
filter gender/M
filter gender/M name/Cleon
filter hi gender/M
(provides flexibility to the user in the case they mistype a metric)filter income/20 name/Cleon
(this only returns dates with name Cleon since income is an invalid metric)Expected Output: Lists the dates with the valid metric values specified
Scroll back to Table of Contents
sort
Sorts the dates in the LoveBook by a specific metric.
Format: sort METRIC/ORDER
name/
, age/
, height/
, income/
and horoscope/
only.increasing
or decreasing
only and is case-sensitive.When sorting dates by a field where both have an equal value, say Kevin and Wayne are sorted by income and both have an income of 2000, applying commands such as edit or star, can affect the stability of the sort. However, the overall sorting order by value is preserved.
Example:
sort name/increasing
sort horoscope/decreasing
sort xx income/decreasing
, where xx is not a metric (provides flexibility to the user in the case they mistype a metric)Expected Output: Lists the dates in the order specified
Scroll back to Table of Contents
showP
Shows the User's Date Preference. This can be edited using the setP
command.
Format: showP
Expected output: Here are your preferences: Age: 22; Height: 180; Income: 2000; Horoscope: TAURUS
Scroll back to Table of Contents
setP
Sets the user's preferences for the matching algorithm.
bestMatch
command.age/AGE
height/HEIGHT
income/INCOME
horoscope/HOROSCOPE
Format: setP [age/AGE] [height/HEIGHT] [income/INCOME] [horoscope/HOROSCOPE]
Example: setP age/22 height/180 income/2000 horoscope/TAURUS
Expected output: Updated Preferences: Age: 22; Height: 180; Income: 2000; Horoscope: TAURUS
Scroll back to Table of Contents
bestMatch
Filters out the most compatible date based on the set preferences.
Format: bestMatch
Expected Output: Here's your best match!
Scroll back to Table of Contents
blindDate
Outputs a random date from the LoveBook.
Format: blindDate
Expected Output: Here's a blind date for you!
Scroll back to Table of Contents
exit
Exits the program.
Format: exit
Expected output: Exiting LoveBook...
help
Shows a window to bring user to the LoveBook User Guide.
Format: help
Expected output: Opened help window.
Scroll back to Table of Contents
Q: How do I transfer my data to another Computer?
A: Install the app in the other computer and overwrite the empty data file with the file that
contains the data of your previous LoveBook home folder.
Q: Is my data stored in the cloud? Will I be open to data breaches?
A: No, all your data is stored locally, no need to fear a potential data hack.
Q: Do I have to save before exiting the application for my data to safely backed up on my computer?
A: All your data is saved on your computer as soon as you enter the command in. There is no need to manually save
your data. In the event of a power outage, all your data will be safe.
Q: Where do I go if I have issues with LoveBook?
A: You may leave your issues here.
Q: What happens if I enter invalid data into the stored data file?
A: LoveBook will clear all the existing data and reset to as it was when you installed it. It is highly discouraged
to manually edit the data file.
Q: How do I change my date's avatar?
A: Currently, the avatars are randomly selected from a pool of 9 avatars. We are working on a feature to allow users
to choose their own avatars.
Scroll back to Table of Contents
Commands are sorted by alphabetical order.
Action | Format | Examples |
---|---|---|
Adding a new date | add name/NAME age/AGE gender/GENDER height/HEIGHT horoscope/HOROSCOPE income/INCOME | add name/John age/25 gender/M height/175 horoscope/Aries income/5000 |
Getting a recommended date | bestMatch | bestMatch |
Getting a blind date | blindDate | blindDate |
Clearing all dates | clear | clear |
Deleting a date | delete INDEX | delete 2 |
Editing a date | edit INDEX [name/NAME] [age/AGE] [gender/GENDER] [height/HEIGHT] [income/INCOME] [horoscope/HOROSCOPE] | edit 3 name/Cleon |
Exiting the application | exit | exit |
Filtering dates by a certain metric | filter METRIC/ARG | filter name/Cleon |
Finding a date | find NAME [MORE_NAMES] | find Cleon |
Getting help | help | help |
Listing all dates | list | list |
Setting your date preferences | setP [age/AGE] [height/HEIGHT] [income/INCOME] [horoscope/HOROSCOPE] | setP age/22 height/180 income/2000 horoscope/TAURUS |
Showing your date preferences | showP | showP |
Sorting dates by a certain metric | sort METRIC/ORDER | sort name/increasing |
Starring a date | star INDEX | star 1 |
Unstarring a date | unstar INDEX | unstar 1 |
Scroll back to Table of Contents