Neo Soon Keat's Project Portfolio Page
Project: DietLAH!
DietLAH! is a desktop diet-tracking application that uses CLI-based inputs to allow for typists to easily record their meals and track their weight-loss/gain journey.
Given below are my contributions to the project.
-
Code contributed: RepoSense link
- New Feature: New help command to provide updated help-information specific to the DietLAH! product.
- What it does: on first launch, shows the help window with common tasks. On user command
help
, it shows the same text. - Justification: As there are many implemented commands in the application, we provide the most relevant subset to get users started. Users may refer to the User Guide if they need more specific help.
- What it does: on first launch, shows the help window with common tasks. On user command
- New Feature: Updated Storage to manage storage of user with new attributes
- What it does: Manages the saving and loading of the user object with varying attributes (e.g. BMI, food list, selected diet plan)
- Justification: This feature allows the application to save the user object in memory at the time the application was running and load it from the disk so that the state is restored. There were some difficulties faced here, as the original AddressBook was meant to store multiple different Persons (or Users), whereas in this case we are only storing the information of a single user, thus some changes had to be done to the Jackson-templates.
- New Feature: Implemented model of User and related-objects (e.g. Bmi, Age, Gender) that allows corresponding information to be stored and computed.
- What it does: Provides the base model that corresponds to the actual user of the application. Also provides base calculation for how the Bmi will be used in the calculation of diet plan recommendations.
- Justification: Allows for OOP-implementation of the User object and all related objects of further features.
- Enhancements to existing features:
- Updated the UI to match the intended design.
- Project management:
- Managed releases
v1.2.1
,v1.3
andv1.4
on GitHub - Keep track of weekly deliverables on CS2103 module website and ensure that submissions were timely
- Managed releases
- Documentation:
- User Guide:
- Developer Guide:
- Added NFRs to the application.
- Documented User object portion of the code.
- Added appendixes for manual testing and effort.
- Updated Ui diagram.
- Website:
- Updated various placeholders and leftovers from AB3 on the About Us, GitHub index and readme pages.
- Contributions to team-based tasks:
- Community: