- Login or signup
- Look at all your recipes
- Filter your recipes based on category
- Add recipe
- Get random recipe
- Remove recipe
- Log out
The PlantUML diagram is representing the architecture of the application.
The diagram can be previewed in Visual Studio Code if you install the extension PlantUML. The official website: https://www.plantuml.com/plantuml
You also need to install Graphviz. Go to https://graphviz.org/download/ for instructions on how to download on your computer.
For descriptions of what each of the packages contain, view README.md.
core interacts with the external library Jackson, for data processing with JSON.
ui relies on the javafx component for creating the graphical interface. It will also interact with core, to fetch and display data from the logic.
The javafx component is essential when creating the graphical UI. It will load UI resources from the ui package.
This architecture separates the core logic, user interface, and data handling components. It allows flexible development, and makes it easier to update or replace specific parts of the system without affecting the entire Cookbook application.
We have not changed much on the interface. See comments before each picture for possible changes.
Login
Moved the boxes further down to make room for potenial error message
CookBook
Changed the font and added a box to type in which recipe you want to delete
Add Recipe
Changed the unit-chooser to a dropdown-box instead of a text box
Random Recipe
Layout
Get random recipe from a category
View Recipes
View all Recipes

Login
Username or password not meeting criterias

Username or Password incorrect

Adding Recipe
Adding Recipe without filling in the title
Adding Recipe without setting the category
Adding Recipe without filling in any ingredients

Adding Ingredient
Adding ingredient without setting the unit
Adding ingredient without setting amount
Adding ingredient without writing the name of the ingredient.

Removing
Removing a recipe that does not exist.

Removing an ingredient that is not in the list

Random Recipes
No Random Recipe of this category

View Recipes
No Recipe of this category

We have been focusing on the following aspects while working on release 2.
- Pair Programming: We are using pair programming approach. Where two developers collaborate on the same computer. The name of the co-author is written in the commit message. Pair programming makes it easier to share knowledge, and helps us identify and address issues more efficiently.
- GitLab Issues: We use GitLab issues to identify and track our work. Each task or feature begins as an issue.
- Branch-Based Development: To manage and isolate all coding tasks, we use branches. Each task or feature is developed on its own branch. This allows us to work on multiple aspects of the project simultaneously without interfering with each other's code.
- Active Group Discussions: We engage in group discussions whenever we encounter challenges during the development process. This makes it faster to solve the problem, and the knowledge is shared among the whole team.
- Milestones We use milestones to track the issues we have for release 2. This helps to organize the work and the project´s progress.

