Inspiration

Have you ever looked deep into your fridge (or your cabinets) and found food that was 2 years past its expiration date? Or bought an ingredient for a specific recipe, but when you go to make it, you find out it expired a week ago? Each of our families have experienced the same exact thing. In fact, on average, families waste $1500 each year on unused food. This food almost always ends up in landfills, creating methane gas. We wanted to create a project that could both help families save money and reduce the amount of food waste in the world. Thus, myFridge was born.

What it does

myFridge allows users to log in on any device and input recently purchased food items and their expiration dates. On the day the food is supposed to expire, myFridge sends an alert within the webpage telling users which item is expiring, and gives the user a link to recipes containing that food item.

How we built it

We built this web application using React.js and Firebase. The data is stored in a Firestore instance that uses google user authentication to create a new document for each unique ID that is called once a user logs into the site. Each user page contains a list of objects that contain a name and an expiration date.

Challenges

We ran into a lot of trouble while pushing/retrieving data from our Firebase Firestore instance. We also ran into problems listing all items in the Firestore instance once retrieved. There were several hours spent creating and debugging objects to be rendered on the page for each document in the database. Towards the end, we also ran into a problem that caused each item to be rendered twice when signing in.

Accomplishments that we're proud of

We are proud that we built a functioning website while as well as using firebase to create a database that can store and recall users' data.

What we learned

While building our website, our group learned how to use javascript, css, and html, which most of our group had never used before. We also learned a lot about firebase integration and functional database design.

What's next for myFridge

In the next iteration, we want to add email and/or text notifications instead of a web alert for expiring items. Users would no longer have to be constantly logged into myFridge in order to receive alerts.

Notes

Does not work on PAL because the google authentication is blocked. Use other network, VPN, or cellular data.

Built With

Share this project:
×

Updates