Inspiration
Food is necessary for life, yet, the carbon footprint it leaves destroys life. We thought about ways of how we can utilize modern technology to better manage the food we purchase and consume. We wanted our project to help people reduce the amount of food wasted and create a better habit of eating more green while also being transparent about what kind of impact they have upon the Earth.
What it does
FoodForThought is a food waste management app. It will take simply a picture of your grocery receipt and store it into an inventory on the application for you to keep track of. It lets you know the expiration date, carbon footprint, calories, purchased date and recommends recipes based on the food you have left. It also has a feature where you can manually add food into your inventory. It also has a social feature where users can share the food they have, to sell/buy/give/receive food in order to reduce waste.
How we built it
We built it using flutter, an open-source UI software development kit created by Google which is used for cross-platform applications for Android, iOS, Linux, Mac, Windows, and the web. We used Android Studio as our editor to develop, test, and debug the application.
Challenges we ran into
The Dart library is a great resource that can be used to import the necessary functions that would aid in the problems we seek to solve. While we found these imports to be useful, there was some challenge deciding which import would work best when turning a CSV file into a list. We found that too many imports, led to a CSV package error; breaking down the possibility of imports and the different ways on how we can implement a function can be overwhelming.
Picking up on the Dart language was another main challenge. We are not as familiar with widgets and the syntax of the language itself. The OOP fundamentals of the Dart language made it easier to transition into, but the syntax of attributes and the layout of each building page took a bit more time to pick up. These challenges with the language made it much easier to end up with errors like “index out of range” when copying from ArrayList/array/object parameters/etc.
Accomplishments that we're proud of
We’re very proud that we have a working application that has different pages users can land on; inventory, add, camera, social, and cookbook. We’re also proud to have made it through the 24 hours together as a team creating something we’re all passionate about. We’re also proud to have quickly picked up on a new language and developed something truly amazing.
What we learned
For all of us, this was the first time we worked with flutter, so it was a very challenging but rewarding experience. We learned a lot about developing applications using Android Studio and examining documents about it. We also learned a whole new language which will surely be useful in the future. We also learned to work together and manage our time more wisely. Overall, the experience we were able to get from this hackathon has been tremendous.
What's next for foodforthought
We would like to see FoodForThought continue to grow beyond what was created in the last 24 hours. Especially since we ran into a number of challenges- number one being the language itself, we believe FoodForThought was not able to live out its fullest potential. Inventory page: work on the visual layout of the app before data management with CSV files, objects, and add/remove/sort methods. This allows for a more organized layout that would also help with the implementation of the intended control buttons. Also, consider different classes to help organize code.
Log in or sign up for Devpost to join the conversation.