Some of our member's families were affected by COVID-19 and they were unable to go to restaurants and eat. So, they were forced to cook at home. However, they were already stressed due to COVID-19 and they didn't want to deal with the extra work of finding a recipe that was to their tastes, as well as possible to make using their stored food. So, we came up with the idea of Virtual Fridge that solves this problem.
What it does
Virtual Fridge provides users with a powerful tool intended to make their favorite recipes given the ingredients that they currently have (Virtual Fridge keeps track of the user's ingredients and can filter out the ones they can make only). As well, we provide users with the option to share their own recipes and experiences! All of these features allow Virtual Fridge to truly become a "smart fridge" that will help you quickly find a recipe that you can make as well as fits your tastes.
How we built it
Python Django Backend and Server Side Routing HTML CSS front-end, Dynamic Template Firebase Realtime Database, Storage and Authentication used
Challenges we ran into
No one had any experience with Django! This made it very hard to debug code. No one had coded a firebase python backend, or used pyrebase either. Only a few of us knew decent CSS. We ran into some problems with Repl.it and github, which slowed down our progress. Some algorithms only worked by itself, but did not work with the project due to not being familiar enough with the django, pyrebase (firebase) datastructures, so had to be left out.
Accomplishments that we're proud of
A social media like network for recipes Conquered a new framework from scratch Working algorithm that sorts recipes based on the amount of matched ingredients and the amount of missing ingredients (in reverse) Amazing team coordination
- Login and Sign Up: Secure OAuth2.0 Firebase authentication system
- Dashboard: Drop down bar on top with options: search, my favorites, share recipe, my fridge, popular recipes and recommended recipes
- Search: just a search bar with a select bar on the side where you can select if you're looking for desert Italian food Chinese etc.
- My Virtual Fridge: A place where the user can input all their ingredients
- Publish a Recipe: A place where the user can share their own recipe, and list of ingredients, also a text box to be filled with a characters description
- Featured Recipes: Top 8 recipes
- View All Recipes: View the entire catalog of shared recipes
- Recipes You Can Make: A list of recipes which are made based on what you have the ingredients for
What I learned
We learned Django from scratch for creating websites! We learned how to setup routes, making a python backend, setup authentication, connect to the database and handle images even! Coordination over Repl and system design as well.
What's next for Virtual Fridge
There are multiple ways Virtual Fridge can be improved.
We include a scanning service that scans the receipt and automatically inputs the ingredients that you bought. Alternatively, we include a scanning service for self-checkout
A delivery service that delivers all of the ingredients you need for the rest of the week. The user would choose the dishes that they want to eat, and we get the ingredients delivered from a local grocery store to the address of the user.
A ranking system that ranks recipes based on likes, dislikes, and reviews. Currently, we sort the recipes based on the culture it's from, the time that you eat it, etc. However, we could implement a ranking system to automatically rank the recipes.