Our chosen theme is Question 1 of Environment. In 2019, Singapore generated around 744 million kg of food waste. Of this 744 million kg, half of it is from Singaporean households. A large reason for this food waste is that Singaporeans order more than they can eat at restaurants and hawker centres, and this excess is thrown away as food waste.
Inspired by the many apps that help gym goers and athletes count their calories, we realised that not all calories are made equal. There is an easy way to help Singaporean consumers make more informed choices about their food. Our hack reduces over ordering at these places by tailoring the recommended portion sizes to their personal preferences, providing consumers with easy to understand information about a suitable portion size for them, taking into account their usual appetite, and their relative hunger level at the time.
The hack is intended to be used before and after meals.
Before a meal, after selecting the restaurant or hawker centre that the user is currently eating at, the user indicates their hunger level. This, in addition to their estimated appetite, is compared to other user's previous reviews regarding how much portion sizes are. These variables are weighed to add a layer of subjectivity -- the portion size recommended will differ for everyone.
This is displayed as a progress bar that fills up as more items are added to the menu.If the user goes above the recommended portion size, the progress bar will notify the user that they are potentially over ordering, and should remove some items from the order.
Once the user finishes their meal, they will further input how filling they thought each dish was: this data will be used not only to estimate the portion size for the restaurant (for all future users), but also to establish the appetite of that specific user, compared to the rest of the population.
The hack was first designed on Figma then implemented using ReactJS and Firebase. ReactJS was used to handle the UI, while the data is organised in Firebase using several relational databases. A collection of restaurants or stores references the dishes sold in the store, which each contain values reflecting the aggregate hunger and satiety levels of the users who have logged their experiences on the program. . A lot of time was spent on attempting to weigh each user's own input (dependent on their hunger/satisfaction levels). Relying on user input to ensure integrity of the results on the app meant that more time had to spent on this section to ensure accuracy Furthermore, another challenge was that we placed great emphasis on the UI design and functionality, as we felt that it had to be both intuitive to use, and still comprehensive enough to achieve its purpose, which was a time consuming process.
The biggest learning point from LifeHack 2022 is the importance of compromise and cooperation. Without each group member doing their own part, the hack would have progressed far slower, and the compromise was necessary for the hack to be both functional and aesthetic. Being able to coordinate our efforts as a group is why we were able to come up with this hack under such time pressure, even if it was our first hackathon in a long time. Of course, there is much room for improvement in this area, and this hack is a great learning opportunity. in future, we will definitely be more prepared in that we can establish a solid UI design earlier, so that we have more time to work on the technicalities of our hack.
Log in or sign up for Devpost to join the conversation.