We are pleased to provide you with the following proposal intended to deliver the “BiteByBudget” website which it
“finds a bite for every budget”.
In light of the current economic crisis in Lebanon, such a service can help people stay on budget while satisfying their cravings. For this particular project, we have teamed up with 3 supermarkets Siyarafour,Winneys,and Foodies to deliver this service by showing customers where they can find the ingredients in these stores to prep for their selected recipe all at the convenience of their budget.
Every story has its authors, and in this website, we took the role of both developing and being the authors by designing the story which in our case is BiteByBudget from scratch and bringing it to life. Below are pictures that display the process of how we visualized BiteByBudget website and its pages from start to finish.
The project will involve designing and developing a web application divided in 2 apps (Admin Portal & Client Interface).
The Client Interface provides a simple interface where the users input their budget, and then select a recipe. Our app will then generate a list of supermarkets where the selected recipe’s ingredients can be found. The list of supermarkets will be sorted primarily according to how many ingredients are available and secondarily by location. A shopping list is then generated so the user can cross out ingredients they buy as they’re shopping.
As for the Admin Portal, it is designed for two main users: •App Admins: can manage the recipe catalog (add, edit, or delete recipes) •Supermarkets: can add ingredients or edit existing ingredients
Our database mainly consists of 5 separate relations (or tables) •Underlined attributes represent the primary ID of an entity. •Italic attributes represent multivalued attributes of an entity. (Find the 6 relations briefly discussed on the next page)
Recipe_ID | Recipe_Name | Image |
---|---|---|
Each recipe will have its own ID (primary key), name, and an image to visualize the mouthwatering recipe. The relationship between RECIPE and INGREDIENT here is “CONSISTSOF”. |
Ingredient_ID | Ingredient_Name | Type | Image |
---|---|---|---|
Each ingredient will have its own ID (primary key), name, type, and an image. |
Supermarket_ID | Supermarket_Name | Location | Image |
---|---|---|---|
Each supermarket will have its own ID (primary key), name, location, and image which is the logo of the supermarket. The relationship between SUPERMARKET and INGREDIENT is “SELLS”. |
Supermarket_ID | Ingredient_ID | Quantity | Price | Status |
---|---|---|---|---|
Many supermarkets sell many ingredients. In each supermarket, the quantity, price, and status(that includes if the ingredient is on sale by how much or not) of a certain ingredient is kept track of. |
Recipe_ID | Ingredient_ID | Quantity | Unit |
---|---|---|---|
Many recipes consist of many ingredients. Each recipe consists of a certain quantity of a certain ingredient which is expressed in certain Unit. |
ID | USERNAME | Pass | IsAdmin |
---|---|---|---|
This table is mainly to store the credentials(USERNAME and Pass) of the users(admins and supermarkets) when they want to login ,and an IsAdmin which will decided their privileges and redirect them if they are an admin or a supermarket or an inactive user(0 representing supermarket account and active,1 representing admin and active,and lastly -1 representing an inactive account). |
can manage the recipe catalog (add, edit, or delete recipes in the RECIPE relation)
can access the SELLS relation to add ingredients, or edit the quantity, price, and status of existing ingredients
describes the app and provides an overview of the services it provides.
provides insight into the background of the brilliant minds behind BiteByBudget
a simple form where the user can submit feedback
this is where the user will search for their recipes across different supermarkets in Lebanon via a multi-step process.
Step 1: The user inputs their budget.
Step 2: The user selects a recipe from a gallery.
Step 3: The user cancels ingredients they already own.
Step 4: The user selects a supermarket from the generated list. The list is sorted according to the percentage of available ingredients and according to location. The highest percentage appears on top. In case of equal percentages, the closest supermarket appears on top.
Step 5: The app generates a shopping list which the client can use as they’re shopping. The list is saved (via cookies) so that the user can access it until they decide to delete it or they generate a new list
oDesktop oMobile (IOS/Android)
○English
In our future versions, we plan to incorporate several new features into our website, some of which are listed below. We are excited to release these updates in the near future and look forward to seeing how our users will utilize these new features.
-
User custom recipe gallery
-
Create custom ingredient shopping list
-
Keep track of our site data (statistics / customer satisfaction / most visited / etc...)
-
Account for supermarket locations when sorting (in addition to percentage of available ingredients and total price)
-
Implement a more user friendly interface for the managing users.