James Liu Zixin's Project Portfolio Page
Project: RIZZipe
RIZZipe is a desktop recipe book application used for busy cooks who want to track their recipes. The user interacts with it using a CLI, and it has a GUI created with JavaFX. It is written in Java, and has about 10 kLoC.
New Features:
- Created GUI forms for adding and editing recipes. (Pull Requests #117 #146)
- What it does: It allows users to add/edit recipes easier without typing in the terminal.
- Justification: It is a more intuitive and visually easier way of inputting/editing data, especially with longer recipes.
- Highlights:
- Additional keyboard and mouse listeners were also added, so hovering over or clicking on the recipe and pressing āFā on the keyboard opens the form.
- Careful consideration of good OOP design was used when implementing these new forms. Separate
event
classes were made to handle the deletion/editing of recipes. An abstract classRecipeForm
was also made, withEditRecipeForm
andAddRecipeForm
inheriting from the parent class.
- Credits: Filbert for refactoring forms to conform to better OOP principles, Seeu Sim for bugfixing the logic behind the forms.
- Created GUI Recipe Popup Cards for recipe details. Pull Request #117
- What it does: It allows users to view the full recipe details on a separate window.
- Justification: Current recipe list panel constricts each
RecipeCard
to a fixed size (based on window size), so recipe cards with longer recipe details are truncated and not very viewable in the main window screen. - Highlights:
- Additional keyboard and mouse listeners were also added, so hovering over or clicking on the recipe and pressing āPā on the keyboard opens the form.
- Credits: Seeu Sim for enhancing the FXML styling of
RecipePopup
.
- Created GUI menu items for import/export. (Pull Requests #193 #146)
- What it does: It provides users with a button and a keyboard shortcut to import or export recipes.
- Justification: One selling point of our app is the ability to share recipes with friends in json files
- Highlights:
- Additional keyboard shortcuts were also added, namely
F3
for import andF4
for export.
- Additional keyboard shortcuts were also added, namely
Code contributed: RepoSense link
Project management:
* Managed releases v1.2
- v1.3
on GitHub
Enhancements to existing features:
Documentation:
- User Guide:
- Developer Guide:
Community: