Since we are college students, living on our own means that we have to start doing our own grocery shopping. Oftentimes it is hard to keep track of all the groceries that we buy, especially fruits and vegetables, causing them to spoil before we can eat them. This ultimately leads to wasted food and money. Thus, Best Before is aimed to help keep track of perishable foods by simply taking a picture of their receipt after they purchase their groceries, helping the user save food and money.

What it does

Best Before is a practical life enhancing application that allows a user to upload a picture of their grocery receipt which will then be scanned by our program and prints out approximate recommended expiration dates back to the user for any perishable foods such as meats, vegetables, fruits, etc. so that they can see when they need to finish their food by so that none goes to waste.

How we built it

We used API's to access different tools such as Python to access JSON text, spell-checking categorizing data integrated through Python to correct store grocery abbreviations, and created a website through HTML and CSS and used a Firebase server. We also used Google Cloud Platform's vision API for OCR recognition and machine learning for text classifiers.

Challenges we ran into

One of the challenges we ran into was finding reliable ways to accurately translate receipt abbreviations for various food items such as CHKN (for chicken) and BANNAS (for bananas). In addition, we also had to figure out how to extract only the food names on the receipt, ignoring all other extraneous information such as prices, the store address and logo, and advertisements.

Accomplishments that we're proud of

Finishing with a functioning application despite having a small time constraint.

What we learned

How to efficiently use online API's and creating a server to run user data on the application. We also learned how to connect to a JSON file from a website to retrieve vital information to make our expiration dates more accurate.

What's next for Best Before

In the future, we plan to create a mobile version of our application with full camera use and more accurately transcribe receipts through machine learning. In addition, we want to create a function in which the application will send notifications to the user’s phone, alerting them when their food is about to expire. We will also implement a feature that lets the user know the nutrition facts of the food they bought as well as nutrients that they are missing from their diet based on the groceries that they bought.

Built With

Share this project: