Skip to content

Karrtii/CookBook

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

60 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CookBook 📙

Table of Contents

CookBook Description

logo

CookBook is an Android application where users can view and search for recipes, and create their own recipes. A friend of mine always complains that he constantly has to eat frozen food because he does not know any recipes and how to cook. So, this app if for anybody looking for an easy way to find recipes and eat actual meals.

MoSCoW

Must Have Implemented
Users must be able to search for recipes based on dish name ✔️
Users can view recipes based on categories ✔️
Users must be able to create their own recipes ✔️
Users must be able to view their own recipes at anytime ✔️
When user create their recipes, they must be able to include ingridients and steps ✔️
A user must be able to register themselves with an email and password ✔️
A user must be able to log in with their email and password ✔️
Should Have Implemented
Users can see pictures of searched recipes ✔️
When creating recipes, users can include an image of the dish
Users can favourite recipes, so that they can view them whenever ✔️
Could Have Implemented
Deleting created recipes ✔️
Users can rate recipes
Users can see the rating of recipes
Won't Have Implemented
Users being able to see other users' profiles
Commenting on recipes
Profile customization
Updating created recipes

Video Demonstration

Youtube link - https://www.youtube.com/watch?v=zpE_CeONH_0

Curriculum covered

Curriculum Covered
Layouts & Android basics ✔️
Activities & Resources ✔️
Intents & Fragments ✔️
User Experience ✔️
RecyclerViews ✔️
Application Architecture ✔️
Local Data Storage ✔️
Networking ✔️
Google Services ✔️
Testing & Publishing

What could have been improved

  1. Inserting an image when creating your own recipe

Could not be done because I could not save an image in SQLite. The implicit intent works like a charm, but nothing else does. I could have used Blob, but I didnt. I tried to save the path of the image from the gallery as a string, but it just didnt work with Glide, eventhough the path of the image and the path returned from the database were same, and there were no errors thrown. So i really didnt know what went wrong here. The code is still available and commented out in AddRecipeFragment under view folder.

I could have just removed the image all together and just have title, ingredients and steps, which would be more user friendly as it would not confuse users. But I still left it in there just to show that I did try to do it.

Temporary solution: Generating random food pictures from drawable folder.

image

  1. Having search bar in the top bar

I tried to do it by following the material design guidelines, but I could not navigate between fragments and pass the data entered in the search bar in the top bar since the top bar is 'part of main acitvity' and everything else are fragments (i could be completely wrong about this). I am able to do only from one fragment, but if the search bar is in top bar, one should be able to search from any fragment.

Temporary solution: Created a new fragment just for searching, included in bottom nav menu.

image

  1. Have user added recipes be searched and viewed by other users.

The reason this is not implemented is because I wanted to show that I can work with local data storage as well. But if I would have implemented it, I would have saved all user added recipes in Firebase Realtime database, and call them when retrieving recipes from API.

  1. Rating recipes and viewing them

Ran out of time before implementing this. Should be doable though. Solution would be to use Firebase Realtime Database and store ratings there and retrive.

  1. Could add confirmation pop up when deleting a recipe.
  2. Have the back button working in the top bar.

About

CookBook is an Android application where users can view and search for recipes, and create their own recipes.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages