We wanted to make an app that would make it easier to keep track of your diet and food intake. A healthy diet is one of the most important parts of staying healthy. Reducing calorie intake is also more effective than exercise for losing weight. Being able to take a picture of the nutrition label of a food or drink makes entry easier and can allow for entry of more than just calories.

What it does

With the use of AWS and the Google Cloud Vision API, our app allows users to take pictures of the nutritional facts label and use Optical Character Recognition (OCR) to collect and store nutritional data about products that users consume on a daily basis.

How we built it

The app was built with the React Native JavaScript framework and Native Base as the front-end, and AWS with Google Cloud Vision API as the back-end.

Challenges we ran into

We had some challenges making the app but most of the issues were from the back end. One of the many challenges we faced was finding a web service that didn't limit the amount of words that we could detect. AWS Rekognition was limited to 50 words per image analysis so we used Google Cloud's Vision API that provided more.

In addition, we also struggled with parsing the data that we received from Google Cloud's Vision API because the text data, although accurately detected, was constructed a bit incompatible for our use case.

What we learned

For some of us we learnt React Native and Native Base, having never used them before. The more experienced members of our group learned how to use AWS and Google Cloud's APIs.

What's next for NutriLevel

We could improve NutriLevel by adding more information that tracks like vitamin and fiber intake. We would also like to add graphics and manual input. In addition to this, we could also add the amount of exercise a person would need for consuming the particular product.

Share this project: