Everyone at some point in their lives has thrown out spoiled or expired food. To prevent this problem, we developed FoodSaver, an Android app that records your food items and shows you when it will spoil soon. Users can input the food item’s name, location, and best-by/expiration date, and it will be placed in the ‘Expired Soon’ list a week in advance of their expiration date. We are passionate about the environment and our goal is to reduce contributions to landfills and harmful greenhouse gases that come from spoiled food and excess food packaging. Besides the environment, the project took fruition when we became aware of food’s impact on our physical and mental health, especially amidst a global pandemic. We hope that our food-expiration tracker will instill new lifestyle habits, such as cooking in the kitchen, shopping more responsibly for groceries, and eating sustainably, healthily, and happily.
What it does
FoodSaver is an Android app designed to help users keep a list of foods around their house. By inputting the expiration date of each food as well, it will notify when a food is about to expire, as well as where the food was last located based on what the user inputted in.
How it was Built
We used Android Studio and wrote it in Java. The Fullstack Developer on the team shared their screen and every team member was on call together to help build the code together over the course of less than 36 hours. Through countless videos and tutorials, we managed to complete the app and it was able to function the way we planned it to be.
Our team is composed of all beginners with minimal coding experience, since this is our first Hackathon. We learned how to use a program we had never used before, Android Studio, and a new language we had little experience with, Java, in under 36 hours and heavily relied on YouTube videos to teach ourselves.
The biggest difficulty was making one of the most important features of the app which was to move an Array item to the ‘Expiring/Expired Food’ List. Since the condition was that the item will be moved if it’s seven days or less, we also had to figure out how to make an infinite looping method that continuously updates the current date and compare it to each food's expiration date. This proved to be time-consuming, as it took nearly 6 hours just to figure out this particular issue.
There were also a few other issues, such as not being able to learn all the necessary knowledge to implement more functionalities into the app, such as creating an ArrayList with infinite elements to have an unlimited food list, but given the time constraint we had, we believe we were able to do all that we could.
Given how little time we had, we are all proud for pushing through and being determined to learn a new program in less than 2 days. This hard work was met with fulfillment knowing that our plans turned into reality, with the app fully functional.