We were inspired to write this small application because it is about health and one of our members took a nutrition class previously. Many people are concerned with their calorie intake, but may not necessarily have the creativity to come up with what they want to eat, so we do that for them.
What it does:
The application allows you to input your information to not only see your bmi and health status, but also allows you to find information about specific foods, get suggestions about what to eat for your remaining calories for the day, or allows you to plan an entire day.
How we built it
We built it using a library which acts as a layer over an HTTP JSON based REST API to make it easier to work with in Java, then examining what a user would like to know or understand, and worked with that library to provide them the information needed.
Challenges we ran into:
The library/API we used had some issues that complicated our app creation, so we had to make some small modifications to that and compile their library manually.
Accomplishments that we're proud of
Working through some specific issues such as the ones with the library as well as finding relatively decent sounding meal plans for a day.
What we learned:
We learned a lot more about using HTTP originally, but switched to the library, which abstracted the HTTP concepts, but still required a basic understanding especially when debugging.
What's next for Nutritana
We had some problems with the library as time went on, so we probably would want to switch back to simple HTTP requests and a JSON library like Jackson or Gson, and possibly even a different API that provided more consistent and useful information, since the one we used often lacked information we required and its structure was not the greatest. Beyond that, we think it would be great to add a visual UI possibly using JavaFX, and storage of user information most likely using a free storage tier from Firebase.
Of course as the program is focused on nutrition, we could make it more personalized based on more information, such as nutrition beyond just calories. Then expanding on what we have now, we could allow users to put together daily and weekly meal plans, adding foods and combining them into meals or snacks, then meals into days.