Inspiration
Many times, students and families have lost track of their food ingredients and ended up with expired food. To reduce food waste, we have designed an app to keep track of food expiration dates, as well as offer recipes based on the user's available ingredients.
What it does
PickleDash is an app that keeps track of the user's food inventory while automatically generating food expiration dates and recipes that the user can cook based on publicly available data from the web.
How we built it
We used Flutter for our frontend mobile application, Node.js for our backend server, and cockroachDB for our database. We also used services provided by Firebase for Authentication, OpenCV for image processing, and Tesseract for word recognition (OCR).
Challenges we ran into
- We realized that receipts are often printed in poor quality which provided challenges for our text recognition program. As a result, we decided to use OpenCV to apply filters to the image such as adaptive thresholding to improve the readability of text for the OCR program.
- It was difficult to determine which of receipt items were food and which of the items were not food. In the end we went with word semantic lookup using wordnet to filter food items from non food items.
- We ran into some trouble using the camera in Flutter, taking up much more time than anticipated
Accomplishments that we're proud of
- Making a full stack app without prior knowledge of the App development cycle
- Were able to pick up new things and hang in there for the entire duration of the Hackathon.
What we learned
The importance of planning and laying down a ground plan that everyone can follow when working on their own parts. Especially the APIs.
What's next for PickleDash
- Better machine learning processes to distinguish between food and non-food items
- Better image processing techniques to recognize words from images
- Expand our list of recipes with database in the web


Log in or sign up for Devpost to join the conversation.