Dao Ngoc Hieu's Project Portfolio Page
Project: Wishful Shrinking
Wishful Shrinking is a desktop application for managing your diet, keeping track of your on-hand ingredients, recipes, as well as the food you’ve eaten (along with their calories). While it has a GUI, most of the user interactions happen using a CLI (Command Line Interface).
Given below are my contributions to the project.
- New Feature: Added the ability to add recipes to the recipe list.
- What it does: allows the user to add recipes to his/her collection.
- Justification: This feature helps the user accumulate healthy recipes for future reference in preparing meals.
- New Feature: Added the custom text area class for command box.
- What it does: handles enter key press from user and filter out other key presses.
- Justification: This feature improves the efficiency of the previous implementation of the command box as a text field. With a text area, users can see the whole command in full view.
- Highlights: This enhancement requires extensive research on JavaFx components and event listeners.
- New Feature: Added responsive image layout.
- What it does: changes the image sizes according to window sizes.
- Justification: This feature significantly improves the look of the app.
- Highlights: This enhancement requires extensive research on JavaFx components and event listeners.
- New Feature: Added UI components: Recipe, Ingredient, Consumption Card and List Panel.
- What it does: displays information to users.
- New Feature: Added UI components: Recipe Side Drawer.
- What it does: displays a single recipe in full view to users.
- Justification: Side panel contain the mini version of recipes and may not display all information.
- Highlights: This component is attached to several event listener to make it responsive to size changes.
- New Feature: Added UI components: TextArea CommandBox.
- What it does: allows users to see more of their commands.
- Justification: Commands tend to be long and the previously implemented TextField only showed one line which takes a lot of time to scroll.
- Highlights: This enhancement requires the implementation of a custom component called CustomTextArea which disregard all key press events except for enter key which will submit the command.
-
Code contributed: RepoSense link
- Project management:
- Managed release
v1.3
on GitHub
- Managed release
- Enhancements to existing features:
- Updated image file path handling for recipes
- Changed CommandBox’s TextField to TextArea for better UX (Pull requests #180)
- Documentation:
- Community:
- Tools:
- Created the team organization and repo on Github
- Integrated JFoenix to the project (#90)