Inspiration

Our inspiration for this was heavily drawn from our past experiences of forgetting the expiry dates of foods that we own, like fruits, breads, and other typical groceries. When baking, cooking, or even making smoothies, we need to utilize our fresh groceries but want to keep them as fresh as possible after purchase. It's enough to remember when you shopped last, but not when managing the expiration dates that vary among the vast variety of groceries that you can purchase. Fulfilling the request of the Patagonia Sustainability Challenge, this app would greatly reduce the wastage of food in general.

What it does

The app allows the user to take a picture of their grocery list / grocery receipt. It will then extract the ingredients from the receipt and label them with common expiry dates for the foods, to remind the user of when they will expire. With further updates, the app may be able to push notify users within the final days of their groceries.

How we built it

We used Android Studio to build our UI templates and integrated our thinking in Java classes. We used Firebase to keep track of a running inventory of the user's fridge in real time. We additionally added the functionality to use the device's camera by bitmapping and redirecting the user to their app. Finally, we aimed to integrate a python script utilizing AI to map the expiry dates, although ran into troubles (which we will elaborate on in the next section), and settled for utilizing csv files and comparing the receipt by using general expiry dates for types of food.

Challenges we ran into

Merging the script with the app - Our main issue with the program, that we were unable to complete by the end, was merging the script's functionality with the app, as our image-to-text method in our script would essentially crash the program once a picture was taken. We attempted to use EC2 to download specific libraries although we could not find a fix. This led to us having to input our ingredients manually for our demo.

Accomplishments that we're proud of

Although the project did not end on a strong note, we learned an essential amount of information over the course of the weekend. 3 of our group members are very new to creating projects, and utilizing GitHub, as well as merging code and collaborating together to accomplish a task with importance. In the end, we all were able to complete independently, successful components to the project, and were able to learn a lot about debugging, as well as utilizing Android Studio.

What we learned

As stated previously, with 3 of our 4 members being new to the environment of Hackathons and programming projects, we learned a lot about using GitHub to commit and push our code to share our creations with each other. Additionally, although not implemented, we learned a lot about APIs and Artificial Intelligence - which we hope to incorporate with our next project. We were unable to hit the nail on the head with merging our components, although we learned especially a lot about libraries and connecting Java with Python through different sources, as well as having our eyes opened to EC2.

What's next for X-Pyre

We will be aiming in the near future to update the components of the app so they work as intended (the camera should be able to take a picture that can be scanned). Additionally, we look forward to pursuing more research towards artificial intelligence and utilizing machine learning to predict models of expiry dates for users' ingredients.

Share this project:

Updates