Yeoh Hsin Ying Candice's Project Portfolio Page
Project: PocketEstate
PocketEstate enables easy organisation of mass clientele property information through sorting of information by price, location and housing type, that may otherwise be difficult to manage.
Given below are my contributions to the project.
Code contributed: RepoSense link
New Features & Enhancements
- Enhancement: Graphical User Interface (GUI)
    
- What it does: Simultaneously displays both property and appointment lists side by side
 - Justification: This feature improves the product significantly because it enables integration of commands on both property and appointment lists, yet enables the user to conduct distinct commands on both lists and view its effects simultaneously without having to call 
list propertyorlist appointmentprior to each operation - Highlights: Greying out of properties and appointments with expired deadlines in the GUI, a newly designed Light theme colour scheme with a organised, minimalist design that highlights important details. The implementation was challenging due to limited experience and precise nature of fxml.
 
 - Enhancement: Maintains unique 
PropertyandAppointmentlists, and all their attributes.- What it does: Supports other commands like 
add,edit,sort,filteras all property and appointment data are maintained in a list. The unique property and appointment lists prevents addition/ edit ofProperty/Appointmentthat results in duplicateProperty/Appointmentlistings. - Justification: The core functionality of our application is heavily reliant on both of these lists, as 
PropertyandAppointmentlists are necessary to maintainPropertyandAppointmentdata PocketEstate manages. - Highlights: Prevents addition of duplicate 
PropertyandAppointmentto minimise redundant data. 
 - What it does: Supports other commands like 
 
- Enhancement: Implemented storage support for both 
Property,Appointmentand their attributes.- What it does: Performs accurate parsing of 
PropertyandAppointmentdata from the respectivePropertyandAppointmentlists to data forms that are reader friendly for display to the user, which is then stored in separate json files. - Justification: Proper parsing and storage of 
PropertyandAppointmentdata ensures data integrity and reliability of PocketEstate that aims to manage significant property and appointment data. - Highlights: Maintains 2 separate json files with reader friendly data (Eg. Parsing of date from 01-12-2021 to Dec 12, 2021, time from 1500 to 3:00pm) to be presented to the user in GUI
 
 - What it does: Performs accurate parsing of 
 - Enhancement: Added the ability to list properties and appointments through the three different 
listcommands -list all,list property,list appointment.- What it does: Allows the user to list a property, list an appointment or list both properties and appointments to the application.
 - Justification: These basic core commands are required for users to view information in the application.
 - Highlights: Allows users to retrieve appointments or properties, separately or together after a sort or filter command.
 
 - Additional Enhancements:
 
Documentation
- User Guide:
 - Developer Guide:
 
Community
- PRs reviewed (with non-trivial review comments): (#162, #126, #298, #111)
 - Provided tips through forum discussions (examples: Configuring IntelliJ to follow module coding standards for switch statements)
 - Provided help through forum discussions (examples: #23)
 - Reported a bug in the original AB3 Storage class diagram (issue: #273)