Caitlin Jee'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 1: Added the ability to get recommended recipes. (Pull requests #109)
- What it does: allows users to get recipes whose ingredients are all present in their fridge.
- Justification: This feature improves the product significantly because a user can easily search for what recipes they are able to make, with the ingredients that are already present in their fridge.
- Highlights: This enhancement required an in-depth analysis of design alternatives. The implementation too was challenging as it was a new command that was not very similar to existing commands.
- New Feature 2: Added the ability to add ingredients to users’ fridge. (Pull requests #41)
- What it does: allows users to add ingredients to their fridge.
- Justification: This feature improves the product significantly because users can save ingredients that they have into the fridge, which is essential when using the
recommend
feature. - Highlights: This enhancement affects existing commands and commands to be added in future. It required an in-depth analysis of design alternatives. The implementation too was challenging as it required changes to existing commands.
- Credits: This feature was refactored from the
add
feature in AddressBook Level 3.
- New Feature 3: Added the ability to search for ingredients in the fridge. (Pull requests #47)
- What it does: allows users to search for ingredients in the fridge by name.
- Justification: This feature improves the product significantly because a user can now easily search for an ingredient by its name to see whether it is present in the fridge.
- Highlights: This enhancement affects existing commands and commands to be added in future. It required an in-depth analysis of design alternatives. The implementation too was challenging as it required changes to existing commands.
- Credits: This feature was refactored from the
find
feature in AddressBook Level 3.
- New Feature 4: Added the ability to delete a consumed recipe in the consumption list. (Pull requests #78)
- What it does: allows users to delete a consumed recipe from the consumption list.
- Justification: This feature improves the product significantly because a user can now delete the recipes that they do not want anymore from the consumption list.
- Highlights: This enhancement affects existing commands and commands to be added in future. It required an in-depth analysis of design alternatives. The implementation too was challenging as it required changes to existing commands.
- Credits: This feature was refactored from the
delete
feature in AddressBook Level 3.
-
Code contributed: RepoSense link
- Project management:
- Managed release
v1.2
(1 release) on GitHub - Refactored code to add and support the Ingredient class when work began on the fridge-related features
- Updated the links and architecture sequence diagram, Logic, Model and Storage class diagrams in the Developer Guide to match Wishful Shrinking
- Reminded team members to review and approve pull requests in a timely manner
- Managed release
- Enhancements to existing features:
- Added support for tags in recipes (Pull requests #85)
- Justification: This feature, which is refactored from the existing tag feature in Address Book 3, allows users to easily tag their favourite recipes.
- Added the ability to search for a recipe in the recipe list by its ingredients or tags, in addition to name. (Pull requests #109)
- Justification: This feature improves on the original
find
feature in AddressBook Level 3 as it now allows users to search for recipes not only by name, but also by ingredients and tags, making it easier for them to filter their recipes.
- Justification: This feature improves on the original
- Wrote additional tests for existing features to increase test coverage from 63.5% to 67.5% (Pull requests #246)
- Added support for tags in recipes (Pull requests #85)
- Documentation:
- Community: