| layout | page |
|---|---|
| title | User Guide |
ResidenceTracker (RT) is a desktop app for managing residences, optimized for use via a Command Line Interface (CLI) while still having the benefits of a Graphical User Interface (GUI). If you can type fast, RT can get your residence management tasks done faster than traditional GUI apps.
In addition to being able to managing several residences at once with just a few key strokes of the keyboard, ResidenceTracker helps users to also keep track of any bookings a residence has, overseeing multiple residences with ease.
- Table of Contents {:toc}
-
Ensure you have Java
11or above installed in your Computer. -
Download the latest
residencetracker.jarfrom here. -
Copy the file to the folder you want to use as the home folder for your ResidenceTracker.
-
Double-click the file to start the app. The GUI similar to the below should appear in a few seconds. Note how the app contains some sample data.

-
Type the command in the command box and press Enter to execute it. e.g. typing
helpand pressing Enter will open the help window.
Some example commands you can try:list: Lists all residences in the app.addn/Clementi HDB a/459A Clementi Ave 3, #04-257, S121459 c/n: Adds a residence namedClementi HDBto the ResidenceTracker.edit1 c/y: edit the first residence clean status as Clean.delete3: Deletes the 3rd residence shown in the current list.clear: Deletes all residences.exit: Exits the app.
-
Refer to the Features below for details of each command.
ℹ️ Notes about the 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/Amber Heights. -
Items in square brackets are optional.
e.gn/NAME [t/TAG]can be used asn/Amber Heights t/friendor asn/Amber Heights. -
Items with
… after them can be used multiple times including zero times.
e.g.[t/TAG]…can be used as(i.e. 0 times),t/friend,t/friend t/familyetc. -
Parameters can be in any order.
e.g. if the command specifiesn/NAME a/ADDRESS,a/ADDRESS n/NAMEis also acceptable. -
If a parameter is expected only once in the command but you specified it multiple times, only the last occurrence of the parameter will be taken.
e.g. if you specifya/Jurong West St 60 a/Jurong West St 70, onlya/Jurong West St 70will be taken. -
Extraneous parameters for commands that do not take in parameters (such as
help,list,exitandclear) will be ignored.
e.g. if the command specifieshelp 123, it will be interpreted ashelp.
Shows a message with the current list of commands along with examples. It also provides a button to copy the URL link to access the help page.
Format: help
Adds a new residence to the list of residences, default for clean status is ‘clean’. Valid clean status inputs are y,n, clean and unclean
- Names can include
@inside. e.gpinnacle@duxton - Names can include numbers. e.g
Block71 - Names must include at least one alphanumeric character.
- Valid clean statuses is case-insensitive, e.g
c/Yis the same asc/y,c/cleanis the same asc/ClEaN. - Address can contain any alphanumeric character and symbols.
@!df34!@//is considered a valid address. - Tags should only contain alphanumeric characters, symbols and spaces are not valid.
Format: add n/RESIDENCE_NAME a/ADDRESS [c/VALID_CLEAN_STATUS] [t/TAG]...
Examples:
add n/Melville Park a/22 Simei Street 1, #10-02, S529948add n/Clementi HDB a/459A Clementi Ave 3, #04-257, S121459 c/n
Shows a list of all residences in the app.
Format: list
- The displayed list of residences will be sorted by their clean status.
- Unclean residences come before clean residences.
Shows a list of all residences with bookings starting in the next 7 days.
Format: remind
- Next 7 days: If today is 1st April, residences with bookings starting on 2nd April to 8th April (inclusive) will be listed.
- The displayed list of residences is always sorted.
- Unclean residences come before clean residences.
Edits the given fields of an existing residence (excludes bookings, see editb instead to edit bookings).
Format: edit RESIDENCE_INDEX [n/RESIDENCE_NAME] [a/ADDRESS] [c/VALID_CLEAN_STATUS] [t/TAG]
- Edits the residence at the specified
RESIDENCE_INDEX. - The
RESIDENCE_INDEXrefers to the index number shown in the displayed residence list(i.e. NOT zero-indexed, items start at index 1). - The
RESIDENCE_INDEXmust be a positive integer 1, 2, 3, … - At least one field must be provided.
- If this command is used to edit tags, all tags for this residence need to be specified.
- Address can contain any alphanumeric character and symbols.
@!df34!@//is considered a valid address. - Valid clean statuses is case-insensitive, e.g
c/Yis the same asc/y,c/cleanis the same asc/ClEaN. - Tags should only contain alphanumeric characters, symbols and spaces are not valid.
- Editing of tags overwrites all existing tags.
Examples:
edit 1 c/yEdits the clean status of the 1st residence on the list toClean.edit 2 n/NashvilleEdits the name of the 2nd residence on the list from toNashville.edit 1 t/tag1 t/tag2Edits the 1st residence on the list to have tagstag1andtag2.
Finds residences whose names contain any of the given keywords.
Format: find KEYWORD [MORE_KEYWORDS]...
- The search is case-insensitive. e.g
duxtonwill matchDuxton - The order of the keywords does not matter. e.g.
Gardens Baywill matchBay Gardens - Only the name is searched.
- Only full words will be matched e.g.
Duxwill not matchDuxton - Apartments matching at least one keyword will be returned (i.e.
ORsearch). e.g.Gardens Baywill returnBotanic Gardens,Bay Area
Examples:
find heightsreturnsHillview HeightsandAspen Heightsfind east coastreturnsEast View,West Coast
Deletes the specified residence from the list of residences shown.
Format: delete RESIDENCE_INDEX
- Deletes the residence at the specified
RESIDENCE_INDEX. - The
RESIDENCE_INDEXrefers to the index number shown in the displayed residences list (i.e. NOT zero-indexed, items start at index 1). - The
RESIDENCE_INDEXmust be a positive integer 1, 2, 3, …
Examples:
listfollowed bydelete 3deletes the 3rd residence in the list of residences shown.
Update Clean status of multiple residences at once.
Format: status clean RESIDENCE_INDEX1 RESIDENCE_INDEX2.. or status unclean RESIDENCE_INDEX1 RESIDENCE_INDEX2..
- Updates the clean status of the residences' with the specified
RESIDENCE_INDEX. - The
RESIDENCE_INDEXrefers to the index number shown in the displayed residences list (i.e. NOT zero-indexed, items start at index 1). - The
RESIDENCE_INDEXmust be a positive integer 1, 2, 3, … - More than 1 residence indexes can be specified.
- After updating, the residence list will sort automatically to show Unclean residences before the clean residences.
Examples:
status clean 1 3update the 1st and 3rd residences clean status toClean.status unclean 2 5update the 2nd and 5th residences clean status toUnclean.
Clears all entries from the residence tracker.
Format: clear
Adds a new booking to the specified residence.
Format: addb RESIDENCE_INDEX n/NAME_OF_TENANT p/PHONE_OF_TENANT s/START_DATE e/END_DATE
- Adds a booking to the residence at the specified
RESIDENCE_INDEX. - The
RESIDENCE_INDEXrefers to the index number shown in the displayed residences list (i.e. NOT zero-indexed). - The
RESIDENCE_INDEXmust be a positive integer 1, 2, 3, … - The phone must only include numbers and must be at least 3 characters long. e.g
p/999p/12345678 - The dates must follow the format DD-MM-YYYY. e.g
s/01-02-2021 - It is invalid to edit the
START_DATEto be later than theEND_DATE. Likewise, it is invalid to update theEND_DATEto be earlier than theSTART_DATE. - It is invalid to edit
START_DATEorEND_DATEsuch that it overlaps with dates of other bookings. - Existing values will be updated to the input values.
Examples:
addb 1 n/John p/91234567 s/01-01-2021 e/02-01-2021addb 2 n/Jane Tan p/65812567 s/31-12-2021 e/05-01-2022
Deletes the specified booking from the specified residence.
Format: deleteb r/RESIDENCE_INDEX b/BOOKING_INDEX
- Deletes the booking at the specified
BOOKING_INDEXfrom the residence at the specifiedRESIDENCE_INDEX RESIDENCE_INDEXandBOOKING_INDEXrefers to the index number as shown in ResidenceTracker (i.e. NOT zero-indexed, items start at index 1).RESIDENCE_INDEXandBOOKING_INDEXmust be positive integer 1, 2, 3, …
Examples:
listfollowed bydeleteb r/3 b/2deletes the 2nd booking from the 3rd residence.
Edits the specified booking from the specified residence.
Format: editb r/RESIDENCE_INDEX b/BOOKING_INDEX [n/TENANT_NAME] [p/PHONE] [s/START_DATE] [e/END_DATE]
RESIDENCE_INDEXandBOOKING_INDEXrefers to the index number as shown in ResidenceTracker (i.e. NOT zero-indexed, items start at index 1).RESIDENCE_INDEXandBOOKING_INDEXmust be positive integer 1, 2, 3, …- At least one of the optional fields must be provided.
- It is invalid to edit the
START_DATEto be later than theEND_DATE. Likewise, it is invalid to update theEND_DATEto be earlier than theSTART_DATE. - It is invalid to edit
START_DATEorEND_DATEsuch that it overlaps with dates of other bookings. - Existing values will be updated to the input values.
Examples:
editb r/1 b/2 p/90069009 s/03-28-2021Edits the phone number and start date of 2nd booking of the 1st residence to be90069009and03-28-2021respectively.
Exits the program.
Format: exit
ResidenceTracker data are saved in the hard disk automatically after any command that changes the data. There is no need to save manually.
ResidenceTracker data are saved as a JSON file [JAR file location]/data/residencetracker.json. Advanced users are welcome to update data directly by editing that data file.
Details coming soon ...
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 ResidenceTracker home folder.
| Action | Format, Examples |
|---|---|
| Add Residence | add n/NAME_OF_RESIDENCE a/ADDRESS [clean/[y or n]] [t/TAG] … e.g., add n/Clementi HDB a/459A Clementi Ave 3, #04-257, S121459 clean/n |
| Add Booking to Residence | addb RESIDENCE_INDEX n/NAME_OF_BOOKER p/PHONE_OF_BOOKER s/START_TIME e/END_TIME e.g., add 2 n/John a/91234567 s/01-01-2021 e/02-01-2021 |
| Delete Residence | delete INDEXe.g., delete 3 |
| Delete Booking of Residence | deleteb r/RESIDENCE_INDEX b/BOOKING_INDEXe.g., delete r/3 b/2 |
| Edit Residence | edit INDEX [n/RESIDENCE_NAME] [a/ADDRESS] [c/VALID_CLEAN_STATUS] [t/TAG]e.g., edit 2 c/n |
| Edit Booking of Residence | editb r/RESIDENCE_INDEX b/BOOKING_INDEX [n/TENANT_NAME] [p/PHONE] [s/START_DATE] [e/END_DATE] e.g., editb r/1 b/2 p/90069009 s/03-28-2021 |
| Update Multiple Clean Status | status clean INDEX1 INDEX2.. or status unclean INDEX1 INDEX2..e.g., status clean 1 3 |
| Find Residence | find KEYWORD [MORE_KEYWORDS]e.g., find Heights |
| Remind Residences with Upcoming Bookings | remind |
| List All Residences | list |
| Help | help |
| Exit | exit |
| Clear | clear |
