TrueRental is a desktop application for managing your clients' details, optimized for use via a Command Line
Interface (CLI) while still having the benefits of a Graphical User Interface (GUI).
TrueRental prioritises productivity and efficiency.
TrueRental can get your client management tasks done much faster than traditional GUI apps, due to minimal mouse movements and distractions.
Our application allows you to perform multiple operations that suits your needs as a letting agent, such as:
This project is built on top of AddressBook-Level3 Project. Special thanks and appreciation for the team of AddressBook-Level 3.
Ensure you have Java 17 or above installed in your Computer.
Download the latest .jar file from here.
Copy the file to the folder you want to use as the home folder for your TrueRental application.
Open a command terminal, navigate into the folder you put the jar file in using the command cd, and use the java -jar truerental.jar command
to run the application.
Note: A GUI similar to the image below should appear in a few seconds. The image below consists of sample data.
Type the command in the command box and press Enter to execute it. E.g. Typing help in the command box and
pressing Enter will open the help window.
Simple and Quick Tutorial:
cadd n/Steven Tan e/steventan@tutorial.com p/98765432: Adds a client named Steven Tan with
email steventan@tutorial.com and phone number 98765432.
list: Lists all clients. There should be 6 clients listed within the TrueRental application.
cdelete 3: Deletes the 3rd client shown in the current list, named Charlotte Oliveiro.
Enter y: Yes for confirmation to the operation.
clear: Deletes every client and their associated rental information.
Enter y: Yes for confirmation to the operation.
exit: Exits the application.
Refer to Command Summary for a quick overview of available commands.
Refer to Features for details of each command.
Notes about command format:
Commands are case-sensitive and should always be lowercase.
E.g. help, cadd, cedit, list.
Words in UPPER_CASE are the parameters to be supplied by the user.
E.g. in cadd n/NAME, NAME is a parameter which can be used as add n/John Doe.
Items without brackets are mandatory, you must provide a value.
E.g. n/NAME for cadd, CLIENT_INDEX and a/ADDRESS for radd.
Items in square brackets [] are mandatory to have at least one of them, you should not omit all of them in a command.
E.g cedit can be used as cedit 1 n/Steven Tan e/steventan@abc.com p/98765432 or cedit 1 n/Steven Tan p/98765432.
Items in curly brackets {} are optional, you may choose not to have them in your command.
E.g. radd can be used as radd 1 a/140 Robinson Road, #03-05, Chow House
or radd 1 a/140 Robinson Road, #03-05, Chow House m/3200 dd/10 d/0.
Items with ... after them can be used multiple times.
E.g. k/KEYWORDS for find can be used as find k/Steven Tan k/98765432 (2 times), find k/98765432 (1 time), 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.
There should be minimally one whitespace between every parameter option flag
E.g. n/James Tan e/jamestan@example.com.
Extraneous parameters for commands that do not take in parameters (such as help, list, exit, sort and clear)
will be ignored.
E.g. if the command specifies help 123, it will be interpreted as help.
Some commands will prompt for confirmation. Inputting y or yes counts as confirmation, and any other input
counts as cancellation.
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.
Notes about this user guide:
Tip: Refer to respective features within Features for a better understanding of each command.
| Commands | Description | Format | Examples |
|---|---|---|---|
| help | Show manual | help | - |
| cadd | Add a client | cadd n/NAME [p/PHONE_NUMBER] [e/EMAIL] {t/TAG...} | cadd n/Steven Tan e/steventan@abc.com p/98765432 |
| radd | Add rental information to a client | radd CLIENT_INDEX a/ADDRESS {s/RENTAL_START_DATE} {e/RENTAL_END_DATE} {dd/RENT_DUE_DATE} {m/MONTHLY_RENT} {d/DEPOSIT} {cl/CUSTOMER_LIST} | radd 1 a/Blk 26 Defu Lane 10 #01-190 e/31/10/2024 m/2350 dd/15 |
| list | List all clients | list | - |
| rview | View rental information of a client | rview CLIENT_INDEX | rview 1 |
| cedit | Edit a client | cedit CLIENT_INDEX [n/NAME] [p/PHONE_NUMBER] [e/EMAIL] [t/TAG...] | cedit 1 n/Steven Tan e/steventan@abc.com p/98765432 |
| redit | Edit rental information for a client | redit CLIENT_INDEX r/RENTAL_INDEX [a/ADDRESS] [s/RENTAL_START_DATE] [e/RENTAL_END_DATE] [dd/RENT_DUE_DATE] [m/MONTHLY_RENT] [d/DEPOSIT] [cl/CUSTOMER_LIST] | redit 1 r/1 a/10 North Bridge Rd #02-5125 m/3000 d/0 |
| find | Find information | find [k/KEYWORDS...] [n/NAME...] [p/PHONE_NUMBER...] [e/EMAIL...] [t/TAG...] | find k/Tan n/Steven Tan p/98765432 |
| cdelete | Delete a client | cdelete CLIENT_INDEX | cdelete 3 |
| rdelete | Delete rental information from a client | rdelete c/CLIENT_INDEX r/RENTAL_INDEX | rdelete c/1 r/2 |
| sort | Sort clients by name | sort | - |
| ↑up↓down arrow keys | Navigate command history | ↑ up-arrow key and ↓ down-arrow key | - |
| ↹ Tab key | Autofill value | ↹ Tab key | - |
| import | Import data from an external file | import | - |
| export | Export all TrueRental's data | export | - |
| clear | Clear all clients' details | clear | - |
| exit | Exit the application | exit | - |
| Parameter name | Description | Constraints | Examples |
|---|---|---|---|
NAME | The client's name. | The value of NAME can consist of only Alphanumeric combinations of Unicode characters, with a minimum length of one character. | Jason 1 Lee, Phua Chu Kang 2, 123456789 |
PHONE_NUMBER | The client's phone number. | The value of PHONE_NUMBER can consist of at least 3 numeric characters without spaces. | 999, 98123333, 123123 |
EMAIL | The client's email address. | The value of EMAIL can consist of two segments delimited by @ such as the format local-part@domain. First segment, local-part, to include Alphanumeric with optionally +_.- characters. The local-part may not start or end with any Special characters. Second segment, domain, is made up of domain labels separated by periods. 1. The domain name must end with a domain label at least 2 characters long, 2. The domain name must have each domain label start and end with Alphanumeric characters. 3. The domain name must have each domain label consist of Alphanumeric characters, separated only by hyphens, if any. | jasonlee@example.com, user.name+tag@example.com, user-name@123 |
TAG | The tags associated with your client. | Only accepts alphanumeric characters without spaces. | FRIENDS, ANNOYING, LOVERBOY |
ADDRESS | The address of the property owned by your client. | The value of ADDRESS can consist of any combination of Unicode characters, with a minimum length of one character. | 59 Ubi Ave 1 #06-05, 18 Upper Boon Keng Road #01-1137 |
RENTAL_START_DATE | The specific date (including day, month, and year) on which the rental period for the property, owned by your client, begins. | The value of RENTAL_START_DATE can be empty (no value is provided after the prefix s/ for the specified command), in which case it will be treated as an unspecified value (—).However, if the value of RENTAL_START_DATE is not empty (a value is provided after the prefix s/ for the specified command), it must adhere to the following conditions:1. It must be in the format dd/mm/yyyy, where dd represents the day, mm represents the month, and yyyy represents the year.2. It must represents a valid date and fall within the range of 01/01/1900 to 31/12/2099.3. If the value of RENTAL_END_DATE is also specified and not empty, then the date represented by the value of RENTAL_START_DATE should be the same date or earlier than the date represented by the value of RENTAL_END_DATE. | 01/01/2024, 01/06/2024 |
RENTAL_END_DATE | The specific date (including day, month, and year) on which the rental period for the property, owned by your client, ends. | The value of RENTAL_END_DATE can be empty (no value is provided after the prefix e/ for the specified command), in which case it will be treated as an unspecified value (—).However, if the value of RENTAL_END_DATE is not empty (a value is provided after the prefix e/ for the specified command), it must adhere to the following conditions:1. It must be in the format dd/mm/yyyy, where dd represents the day, mm represents the month, and yyyy represents the year.2. It must represents a valid date and fall within the range of 01/01/1900 to 31/12/2099.3. If the value of RENTAL_START_DATE is also specified and not empty, then the date represented by the value of RENTAL_END_DATE should be the same date or later than the date represented by the value of RENTAL_START_DATE. | 31/12/2027, 01/02/2026 |
RENT_DUE_DATE | The specific date (of the month) on which the rent payment is due for the property owned by your client. | The value of RENT_DUE_DATE can be empty (no value is provided after the prefix dd/ for the specified command), in which case it will be treated as an unspecified value (—).However, if the value of RENT_DUE_DATE is not empty (a value is provided after the prefix dd/ for the specified command), it must adhere to the following conditions:1. It must be an integer within the range of 1 to 31.2. It must not have leading zeroes (for example, 01 or 001 are not valid). | 1, 15, 30 |
MONTHLY_RENT | The monthly rent amount for the property owned by your client. | The value of MONTHLY_RENT can be empty (no value is provided after the prefix m/ for the specified command), in which case it will be treated as an unspecified value (—).However, if the value of MONTHLY_RENT is not empty (a value is provided after the prefix m/ for the specified command), it must adhere to the following conditions: 1. It must be a number greater than or equal to 0. 2. If it is a decimal, it must have exactly 2 decimal places (for example, 100., 100.0 or 100.001 are not valid).3. It must not have leading zeroes (for example, 0100 or 00100 are not valid). | 1000, 1000.00, 0 |
DEPOSIT | The security deposit amount for the property owned by your client, paid by the tenant at the start of the lease. | The value of DEPOSIT can be empty (no value is provided after the prefix d/ for the specified command), in which case it will be treated as an unspecified value (—).However, if the value of DEPOSIT is not empty (a value is provided after the prefix d/ for the specified command), it must adhere to the following conditions: 1. It must be a number greater than or equal to 0. 2. If it is a decimal, it must have exactly 2 decimal places (for example, 100., 100.0 or 100.001 are not valid).3. It must not have leading zeroes (for example, 0100 or 00100 are not valid). | 2000, 2000.00, 0 |
CUSTOMER_LIST | The list of the tenant(s) for the property owned by your client. | The value of CUSTOMER_LIST can be empty (no value is provided after the prefix cl/ for the specified command), in which case it will be treated as an unspecified value (—).However, if the value of CUSTOMER_LIST is not empty (a value is provided after the prefix cl/ for the specified command), it must adhere to the following conditions:1. It can consist of any combination of Unicode characters.2. It must have a length of at least one character. 3. If it does not contain a ; character (semicolon), it represents the name of a single tenant.4. If it contains the ; character(s) (semicolon), it is treated as a list of tenant names, with each name separated by a ; and name cannot be empty.5. If it contains the ; character(s) (semicolon), ; should not appear at the beginning or end of the value. | David Ng, Steven Ang 2;David Tan, 123, Dexter;Joshua |
CLIENT_INDEX | Client index number on the client list panel | Only accepts Positive Integer (excluding 0) up till the last index shown on the list | 1 |
RENTAL_INDEX | Rental index number on the rental information list panel | Only accepts Positive Integer (excluding 0) up till the last index shown on the list | 1 |
KEYWORD | Keyword to be used to match client's information | The value of KEYWORD can consist of any Alphanumeric, Special characters +_.@-, and spaces with a minimum length of one character. | Jason, 0 |
Additional constraints: For future enhancements and improvements to the parameter constraints, please visit our Developer Guide.
A client is only considered as duplicate if and only if all three parameters NAME, PHONE_NUMBER
and EMAIL_ADDRESS are exactly the same (including case sensitivity).
This is to allow the user to have a greater flexibility of manipulating the client's information.
For example: All the clients stated below the initial client are NOT CONSIDERED as duplicates.
An initial client with the name Jason Lee, phone number 91231231 and email address jasonlee@example.com
The following are NOT DUPLICATES of the initial client:
Jason Lee, phone number 99998888 and email address jasonlee@example.com.Jason Lee, phone number 91231231 and email address NOTjasonlee@example.com.Jason Lee, phone number — and email address jasonlee@example.com.Jason Lee, phone number 91231231 and email address —.JASON LEE, phone number 91231231 and email address jasonlee@example.com.Note: — signifies an empty parameter without any characters.
The following is a DUPLICATE of the initial client:
Jason Lee, phone number: 91231231 and email address jasonlee@example.com.Rental information is considered a duplicate if and only if the value of the ADDRESS parameter matches exactly, including case sensitivity.
This is to allow you to have a greater flexibility of manipulating the rental information.
For example:
An initial rental information with the address 201 Bukit Batok Street 21 #10-163, rental start date 01/01/2024 and monthly rent amount 3200. The values for rental end date, rent due date, deposit amount, and customer list are unspecified.
The following are NOT DUPLICATES of the initial rental information:
201 BUKIT BATOK STREET 21 #10-163, rental start date 01/01/2024 and monthly rent amount 3200. The values for rental end date, rent due date, deposit amount, and customer list are unspecified (as —).201 BUKIT Batok Street 21 #10-163, rental start date 01/01/2024 and monthly rent amount 3500. The values for rental end date, rent due date, deposit amount, and customer list are unspecified (as —).201 Bukit BATOK Street 21 #10-163, rental start date 01/01/2024, monthly rent amount 3200 and rental end date 31/12/2024. The values for rent due date, deposit amount, and customer list are unspecified (as —).201 BuKiT BaToK StReEt 21 #10-163, rental start date 01/01/2024, monthly rent amount 3200, rental end date 31/12/2024, rent due date 10. The values for deposit amount and customer list are unspecified (as —).201 bukit batok street 21 #10-163, rental start date 01/06/2024 and monthly rent amount 3200. The values for rental end date, rent due date, deposit amount, and customer list are unspecified (as —).The following are DUPLICATES of the initial rental information:
201 Bukit Batok Street 21 #10-163, rental start date 01/02/2024 and monthly rent amount 3300. The values for rental end date, rent due date, deposit amount, and customer list are unspecified.201 Bukit Batok Street 21 #10-163 and rental start date 01/12/2024. The values for monthly rent amount, rental end date, rent due date, deposit amount, and customer list are unspecified.helpDisplays a message with a link that directs you to the TrueRental website.
Format: help
caddAdds a client to TrueRental.
Format: cadd n/NAME [p/PHONE_NUMBER] [e/EMAIL] {t/TAG...}
Constraints:
Tip:
Ravi S/O Ramasamy will not be accepted. Ravi SO Ramasamy.Example inputs:
cadd n/John Doe p/98765432 e/johnd@example.comcadd n/Clarice Long e/claricelong@example.comcadd n/Betsy Crowe e/betsycrowe@example.com t/North t/FriendExample outputs:
New client added: John Doe; Phone: 98765432; Email: johnd@example.comNew client added: Clarice Long; Email: claricelong@example.comNew client added: Betsy Crowe; Email: betsycrowe@example.com; Tags: [Friend][North]raddAdds a rental information for the specific client to TrueRental.
Format: radd CLIENT_INDEX a/ADDRESS {s/RENTAL_START_DATE} {e/RENTAL_END_DATE} {dd/RENT_DUE_DATE} {m/MONTHLY_RENT} {d/DEPOSIT} {cl/CUSTOMER_LIST}
Constraints:
CLIENT_INDEX refers to the index number shown in the displayed client list and must be a positive integer
starting from 1.Example inputs:
radd 1 a/140 Robinson Road, #03-05, Chow House m/3200 dd/10 d/0radd 1 a/Blk 26 Defu Lane 10 #01-190 e/31/10/2024 m/2350 dd/15 cl/Dominicradd 3 a/25 Jalan Sempadan #02-06 s/01/09/2024 e/31/08/2025 cl/Steven Lim;Jessica dd/20 m/2750 d/8250Example outputs:
New rental information is added to the client: Address: 140 Robinson Road, #03-05, Chow House; Rental Start Date: —; Rental End Date: —; Rent Due Date: 10; Monthly Rent: $3200.00; Deposit: $0.00; Customer List: —New rental information is added to the client: Address: Blk 26 Defu Lane 10 #01-190; Rental Start Date: —; Rental End Date: 31 Oct 2024; Rent Due Date: 15; Monthly Rent: $2350.00; Deposit: —; Customer List: DominicNew rental information is added to the client: Address: 25 Jalan Sempadan #02-06; Rental Start Date: 01 Sep 2024; Rental End Date: 31 Aug 2025; Rent Due Date: 20; Monthly Rent: $2750.00; Deposit: $8250.00; Customer List: Steven Lim;JessicalistDisplays a list of all clients within TrueRental on the Client List Panel.
Format: list
rviewDisplays a list of all rental information related to a specific client within TrueRental.
Format: rview CLIENT_INDEX
Note: Displays all rental information related to the client at the specified CLIENT_INDEX.
Constraints: The CLIENT_INDEX refers to the index number shown in the displayed client list and must be a positive
integer starting from 1.
Example inputs:
rview 1 rview 2 Example outputs:
2 rentals listed!, while displaying the updated rental information on the rental information list panel.1 rental listed, while displaying the updated rental information on the rental information list panel.ceditEdits an existing client with TrueRental. The provided input will replace the existing input, subjected to the parameter constraints.
Format: cedit CLIENT_INDEX [n/NAME] [p/PHONE_NUMBER] [e/EMAIL] [t/TAG...]
Constraints:
CLIENT_INDEX refers to the index shown in the displayed client list and must be a positive number.1 till the last number shown within the list.NAME, PHONE_NUMBER and EMAIL will be replaced by the provided value in the command, given that it is
not a duplicate.TAGs will be removed and replaced by the provided value in the command.Tip:
p/ or e/
respectively.t/.Ravi S/O Ramasamy will not be accepted. Please omit any special
character within the name such as Ravi SO Ramasamy.Example inputs:
cedit 1 p/91234567 e/alexandertanchongming@example.comcedit 3 n/Chanel Oliveiro t/Rich t/Twincedit 2 p/Example outputs:
Edited Client: Alexander Tan; Phone: 91234567; Email: alexandertanchongming@example.com; Tags: [Rich]Edited Client: Chanel Oliveiro; Phone: 93210283; Email: charlotte@example.com; Tags: [Rich][Twin]Edited Client: Bernice Yu; Email: berniceyu@example.com; Tags: [Friendly][Rich]reditEdits a specific client's rental information in the address book.
Format: redit CLIENT_INDEX r/RENTAL_INDEX [a/ADDRESS] [s/RENTAL_START_DATE] [e/RENTAL_END_DATE] [dd/RENT_DUE_DATE] [m/MONTHLY_RENT] [d/DEPOSIT] [cl/CUSTOMER_LIST]
Constraints:
CLIENT_INDEX refers to the index number shown in the displayed client list and must be a positive integer
starting from 1.RENTAL_INDEX refers to the client's rental index number shown in the displayed rental information list (
run rview CLIENT_INDEX to display the rental information list) and must be a positive integer starting from 1.
RENTAL_INDEX of the rental information you want to edit, you can just use it directly in the command without needing to run rview CLIENT_INDEX to check for the RENTAL_INDEX.ADDRESS to be empty, as it is required to not be empty.Tip:
s/, e/, dd/, m/, d/
or cl/ respectively.Example inputs:
redit 1 r/1 a/10 North Bridge Rd #02-5125 m/3000 d/0redit 1 r/2 e/31/12/2024 dd/1 cl/Alice;Bobredit 3 r/1 s/01/01/2025 e/ d/12000 cl/Tan Eng HengExample outputs:
Edited Client's Rental Information: Address: 10 North Bridge Rd #02-5125; Rental Start Date: 01 Apr 2018; Rental End Date: 31 Dec 2024; Rent Due Date: 15; Monthly Rent: $3000.00; Deposit: $0.00; Customer List: Jackson;YummiEdited Client's Rental Information: Address: Blk 112 Bishan Ave 5, #15-521; Rental Start Date: 01 Jan 2019; Rental End Date: 31 Dec 2024; Rent Due Date: 1; Monthly Rent: $2700.00; Deposit: $8100.00; Customer List: Alice;BobEdited Client's Rental Information: Address: Blk 8 Hougang Ave 10, #11-2411; Rental Start Date: 01 Jan 2025; Rental End Date: —; Rent Due Date: 15; Monthly Rent: $1500.00; Deposit: $12000.00; Customer List: Tan Eng HengfindFinds clients whose names contain any of the given keywords, name, email, phone or tag.
Format: find [k/KEYWORD...] [n/NAME...] [p/PHONE_NUMBER...] [e/EMAIL...] [t/TAG...]
Constraints: Must contain at least one of the optional fields.
Note: Utilising KEYWORD will perform a search for clients whose details include the keyword. Clients are matched
if any of their fields contains the keyword, including rental information details (E.g. name, email, address, etc.).
Tips:
hans will match Hans.[k/KEYWORD], [n/NAME], [p/PHONE_NUMBER] and [e/EMAIL], partial input will be matched with any of the
fields, if any.
Han will match Hans[t/TAG]) will match exactly.
t/Friend will only match with the tag Friend, not Friends or MyBestFriend.OR search).
k/Hans k/Bo will return Hans Gruber, Bo Yang`Example inputs:
find n/Alex, finds any client whose name contains the word Alex.find k/12, finds any client whose details contain 12.find t/Rich, finds any client with the matching tag Rich.Example outputs:
1 persons listed!. It will return every client whose name contains Alex.2 persons listed!. It will return every client whose details contain 12.3 persons listed!. It will return every client with the tag Rich.cdeleteDeletes the specified client from TrueRental.
Format: cdelete CLIENT_INDEX
Note:
y for yes, any other input will result in a cancellation.CLIENT_INDEX and all related rental information.rdeleteDeletes the specified rental information from the specified client
Format: rdelete c/CLIENT_INDEX r/RENTAL_INDEX
Note:
y for yes, any other input will result in a cancellation.RENTAL_INDEX from the client at the specified CLIENT_INDEX.CLIENT_INDEX refers to the index number shown in the displayed client list.RENTAL_INDEX refers to the index number shown in the displayed rental information list when the rview command is
run. (i.e. rview CLIENT_INDEX)CLIENT_INDEX and RENTAL_INDEX must be positive integer starting from 1.Examples:
list followed by rdelete c/2 r/1 deletes the 1st rental information from the 2nd client in the address book.find Betsy followed by rdelete c/1 r/2 deletes the 2nd rental information from the 1st client in the results of
the find command.sortSorts all entries in the application according to name in alphabetical order.
Format: sort
↑ up-arrow key and ↓ down-arrow keyNavigates through all previously entered commands.
↑ up-arrow key will revisit the previous command in the command history.↓ down-arrow key will revisit the next command in the command history.Constraints:
Note:
Example Set-up: (Steps 1 to 6 are performed sequentially)
Please set up the following commands before proceeding with the example inputs and outputs.
cadd n/John Doe p/99887766 e/johndoe@example.comradd 1 a/BLK 1 Bishan s/01/01/2024 e/31/12/2024 dd/15 m/2700 d/8100 cl/Steven;Davidcadd n/Amy Tan p/99887766rview 1listcdelete 2Example Inputs: (Steps 1 to 13 are performed sequentially)
↑ up-arrow key on the keyboard.↑ up-arrow key on the keyboard.↑ up-arrow key on the keyboard.↑ up-arrow key on the keyboard.↑ up-arrow key on the keyboard.↑ up-arrow key on the keyboard.↑ up-arrow key on the keyboard.↓ down-arrow key on the keyboard.↓ down-arrow key on the keyboard.↓ down-arrow key on the keyboard.↓ down-arrow key on the keyboard.↓ down-arrow key on the keyboard.↓ down-arrow key on the keyboard.Example Outputs: (Steps 1 to 13 are performed sequentially)
cdelete 2 is shown in the command box.list is shown in the command box.rview 1 is shown in the command box.cadd n/Amy Tan p/99887766 is shown in the command box.radd 1 a/BLK 1 Bishan s/01/01/2024 e/31/12/2024 dd/15 m/2700 d/8100 cl/Steven;David is shown in
the command box.cadd n/John Doe p/99887766 e/johndoe@example.com is shown in the command box.cadd n/John Doe p/99887766 e/johndoe@example.com is still shown in the command box, because there
are no more previous commands.radd 1 a/BLK 1 Bishan s/01/01/2024 e/31/12/2024 dd/15 m/2700 d/8100 cl/Steven;David is shown in the
command box.cadd n/Amy Tan p/99887766 is shown in the command box.rview 1 is shown in the command box.list is shown in the command box.cdelete 2 is shown in the command box.↹ Tab keyAutofills command name, prefix and value for prefix.
Entering the ↹ Tab key will help to fill or append to the command input with appropriate value.
Constraints:
Note:
list, or command that does not need prefix such as cdelete.List of helping words (separated by comma (,)):
Example Inputs: (Steps 1 to 12 are performed sequentially)
r as the input command.↹ Tab key on the keyboard.↹ Tab key on the keyboard.↹ Tab key on the keyboard.radd as the input command (take note of the white space at the end of the command
input).↹ Tab key on the keyboard.↹ Tab key on the keyboard.↹ Tab key on the keyboard.radd cl/J as the input command.↹ Tab key on the keyboard.↹ Tab key on the keyboard.↹ Tab key on the keyboard.Example Outputs: (Steps 1 to 12 are performed sequentially)
r.radd.redit.rdelete.radd .radd a/.radd cl/.radd d/.radd cl/J.radd cl/Josh.radd cl/Joshua.radd cl/Jayden.importImports and overwrite all existing data from a .json file.
Format: import
Constraints:
.json files can be imported.exportExports all data within TrueRental into a .json file.
Format: export
clearClears all entries from TrueRental.
Format: clear
Note: Confirmation required. Type y for yes, any other input will result in a cancellation.
exitExits the program.
Format: exit
TrueRental data are saved in the hard disk automatically after any command that changes the data. There is no need to save manually.
TrueRental data are saved automatically as a JSON file [JAR file location]/data/addressbook.json. Advanced users are
welcome to update data directly by editing that data file.
Caution:
If your changes to the data file makes its format invalid, TrueRental will discard all data and start with an empty
data file at the next run. Hence, it is recommended to take a backup of the file before editing it.
Furthermore, certain edits can cause the TrueRental to behave in unexpected ways (E.g. if a value entered is outside
the acceptable range). Therefore, edit the data file only if you are confident that you can update it correctly.
Q: How do I transfer my data to another computer?
A: Export the data file in the current computer with the export command. Install the app in the other computer
and use the import command to import the data file that you previously exported.
preferences.json file created by the application before running the application again.help command (or use the Help menu, or the keyboard shortcut F1) again, the original Help Window will remain minimized, and no new Help Window will appear. The remedy is to manually restore the minimized Help Window.MONTHLY_RENT and DEPOSIT is not precise enough (we use the term numbers). Please follow Parameter Constraints Table for valid values.CUSTOMER_LIST is not precise enough (we only mention you should separate the names by ; if there is more than one customer). Please follow Parameter Constraints Table for valid values..... You should not provide a value that is too long to avoid this issue.import and export is displayed with a green color, which may be confusing for users.import or export fails is quite vague ("The chosen file may be corrupted").
We will be refining this error message in the future to give more feedback about what went wrong
(duplicate clients, missing field, etc.)y/n, which implies you can only use n to cancel the command. However,
any input other than y/yes leads to cancellation.CommandHistory storage file. The file will subsequently be created after the user enters his/her first TrueRental's command. This will not hinder your experience.Extraneous: Not directly related connected with or related to something.
Client: A landlord whose properties are managed by you (a letting agent).
Letting agent: An individual that facilitates agreements between tenants and landlords to rent properties.
Customer list: The list of tenant(s) who are renting a property.
Rent due date: The date (dd in dd/mm/yyyy) in each month when monthly rent is collected from tenants.
Ranges between 1 - 31, without leading zeros.
Command Line Interface (CLI): A means of interacting with a computer program by inputting lines of text.
Graphical User Interface (GUI): A means of interacting with a computer program through visual indicators such as graphical icons, images, videos, etc.
Parameter: A value that defines the behavior of commands. For example, cdelete 1 deletes the first client in the
list, while cdelete 2 deletes the second. The numbers 1 and 2 are parameters supplied to the cdelete
command.
Parameter option flag: A prefix ending in / which indicates that what comes after is a specific parameter.
For example, in the command rdelete c/1 r/2, the parameter option flags are c/ and r/. c/ indicates
that the 1 which comes after is the client index, and r/ indicates that the 2 which comes after is the
rental index.
Index: The position of a client or rental information in the lists shown in the app, represented by a number.
Domain name: The second part of an email address after @.
For example, gmail.com and outlook.com.
Domain label: The second part of an email address after @.
For example, gmail and outlook.
Home Folder: The folder you saved this application in.
Unicode Characters: Symbols and letters that conform to the Unicode standard. Almost all characters on your keyboard will be valid unicode characters.