Inspiration

Our inspiration for Grocery Tracker is that feeling when you realize you've forgotten the lettuce in the fridge for more than just a couple of weeks and by now, it's definitely gone bad.

What it does

Grocery Tracker solves this problem by keeping a list of all your groceries with a countdown of the expiration date of each item with just a quick picture of your receipt! Grocery Tracker also generates recipes with your grocery list items for inspiration to get use of all your ingredients!

How we built it

We used React Native and Flask to build a mobile app that can take pictures of receipts and display grocery lists and recipes! With Google Gemini generative AI, grounded in Google Search, we were able to identify food items from receipts, generate the estimated shelf life for each item, and find recipe inspiration!

Challenges we ran into

The most difficult part of the project was getting our React Native front end to communicate with the Flask backend which handled communication with the Google Gemini script. Communicating with the backend was difficult because of the Flask app configuration required for our specific project and the changes in various versions of Flask and React Native made it harder to find helpful resources. Additionally, the asynchronous functions in React Native that were used for communicating with the backend Flask App were difficult to use. However, we did not give up and built a fully functional app, learning more about app development and generative AI along the way!

Accomplishments that we're proud of

We’re proud of our ability to persevere and create a functional app to the best of our abilities given the limited time we had. At certain points, we felt like giving up and cutting corners when we faced bugs that we didn't understand while working on the project until 5 am, but we refused to do either. As a result, we created an app we are proud of, an app that utilizes AI to solve the problem of food waste, and an app that we want to continue developing in the future!

What we learned

We learned how generative AI has improved in recent developments with technologies such as Gemini's grounding and the RAG technique. Generative AI's ability to 'hallucinate' answers is a concerning limiting factor for its application and we saw firsthand how new developments can reduce this concern! We also gained a ton of experience using Native React and Flask for our full-stack application! Additionally, we learned skills just as important as these tools such as taking a brainstormed project idea and starting the development process to create a real product, how to be patient despite (very frustrating) bugs, and how to utilize the tools we have to create something amazing!

What's next for Grocery Tracker

In the short term, we want to improve Grocery Tracker's UI to make it more attractive and accessible for users. For the long term, we want to continue experimenting with developing generative AI models and techniques to improve the accuracy and add features for Grocery Tracker including an idea to generate shopping lists based on missing ingredients in recipes that users want to use and prioritizing recipe generation for grocery items that are about to go bad!

Share this project:

Updates