The inspiration came from the eye-opening Workshop 7: "cleanfood: code what you eat". In said workshop we were shown the amount of food that goes to waste in the world (around one third of the total food production). In light of such knowledge we endeavored in solving this issue.
What it does
Our system contains two parts:
One consumer side which helps the user keep track of their food purchases and the expiration date of the respective items in order to reduce food waste.
A retailer side which aggregates the data from the buyers and provides an API to search through this data and help them get real statistics of the consumer market. Therefore the retailer can react faster to the trends in consumer purchases and restock the supplies in a more intelligent manner.
How we built it
- On the client side we used Android Studio to develop an mobile app simulating the typical user care for a buyer using a food inventory app. With this app the user can add items to the local "fridge" and publish the data for subsequent retailer usage and analysis. Adding the data was developed initially using the Google Vision API and scanning the receipt using OCR. Although fully, operational, this module was not integrated in the final system. This publishing is achieved by the usage of REST API exposed by the backend application.
- On the backend side we use the Solr search engine in order to index the data and expose the relevant information to the retailers. In order to enhance data we attempted to use Google Knowledge Graph API but because the lack of time, we created dummy, mock data to show the functionality. For visualization purposes, the data from the backend is consumed by the frontend which displays it as a heat-map using the Google Map API.
Challenges we ran into
- One of the challenges we faced was that our initial idea of making a recipe recommendation using the data of the user's fridge was already attempted and implemented in the past. This required us to change the course of the system.
- Another challenge was that Android Studio was unable to run in some of the laptops which slowed down development significantly. Also the internet connection on one of the laptops was quite unstable.
- The database management and filtering of the results posed another challenge since the information is continually changing and performance and ease of use had to be taken into account. Also the data collection by itself was a time-consuming task due to the lack of freely available databases with food statistics like expiration date, nutrients, etc.
Accomplishments that we're proud of
We are proud of the development of a system that is able to collect huge amount of data and use it in a meaningful way. For example, retrieving statistics, visualizing in a easy-to-use map and also checking out historical data from the past in order to make educated guesses about the future. We also proud to have undertaken such a diverse and big project and having met our goals in time.
What we learned
We learned of the importance of early research in the field before starting implementing any idea. We also familiarized ourselves with a number of APIs and framework that helped the development of out application.
What's next for Save cash, don't trash
"Save cash, don't trash" can be used as building block for other applications and we hope to have helped in alleviating the important world issue of food waste.