Inspiration 💡

As college students, we understand firsthand how difficult it is to eat healthy when you do not have many options. Most students also do not have the budget to afford a fitness program or a personal trainer, and therefore work out using bad form which causes slow progress and bad habits that can potentially lead to injuries. We created foodness to help tackle this problem and ease the process of students getting closer to their dream physique.

What it does ⚙️

foodness is a web service that fosters healthy eating habits alongside efficient workout programs. Users can track their food items and meal recipes are automatically generated using what is available. The app also enables users to update their inventory using a receipt scanner. On the fitness side, foodness recommends workout plans for you based on your physique goals. As a bonus, you can track your form live while working out using foodness and it informs you right on the live stream using client-side machine learning i.e. TensorflowJS whenever you deviate from the perfect form for the exercise.

How we built it 🔨

We built foodness using React and TailwindCSS on the frontend, and Firebase for the authentication. We use MongoDB to store the user data and inventory and expose API endpoints to the client using Express. On the server, we extracted the receipt text using Tesseract and also created an algorithm to determine the food items in the extracted text using open-access data from FooDB. To help the users to do the exercise in the correct form and tracking it we are using client-side machine learning i.e. TensorflowJs which users don't have to worry about sending their video stream anywhere because it does all the computation on the client side itself.

Challenges we ran into 🧗‍♂️

This was the first time most of us on the team worked together, so we had some issues working in parallel with a couple of merge conflicts and code overwrites. We had a lot of issues to make sure the tracking system was working fine in tensorflowjs and had a tough time calculating the amount of repetitions that a user is supposed to do of a certain exercise in order to reach their goal in 30 days. It was difficult to come up with an algorithm that can generate the amount of calories needed to be burned to achieve their goal and calculate the amount of bicep curls or lunches or lateral raises the user is supposed to do.

Accomplishments that we're proud of 🏆

We are proud that we were able to pull everything together and made a working MVP with all the features that we planned to add for e.g. the Machine learning aspect with our own algorithm to generate the amount of exercise user needs to reach their goal on time, we wanted to solve this issue because many of our teammates goes to gym and they would prefer a personal trainer and nutritionist that they don't have to pay for so now everyone can have their own virtual nutritionist and trainer to help them live a healthy life.

What we learned 📚

We learned how to integrate TensorflowJS and how to center a div too(😉), we learned how to work in a big time which was difficult for us due to having a lot merge conflicts.

What's next for foodness ➡️

we will be adding more exercises and a custom plan maker so that it's even more user-friendly and customizable as per the user's need.

Share this project:

Updates