Inspiration
Inspired by the importance of nutrition and how the foods we eat impact our health; we wanted to create a nutrition tracker that functions as a food diary, but also saves the users’ data, food profiles, and creates nutrition trends to inspire the user to create healthier eating habits.
What it does
A Node.JS Web Application with a user login and dashboard interface for inputting nutrition data with every meal to track micro and macronutrients, and keeping the nutrition data stored for future reference for the user. The application has the ability to sign up and track information on multiple users.
How we built it
- Frontend Built with HTML, CSS, EJS
- Backend Built in Node.JS, MongoDB, Mongoose, and Express
- API hosted locally
Challenges we ran into
While we were both familiar with git and github, this was our first time putting those skills in practice on a team project. The process of pulling, merging, and solving merge conflicts took some time to figure out. Our consensus was that this project was the perfect sandbox to practice these skills, and we feel confident that we can better utilize them in the future. The scope of the project may have been too ambitious. We ended up cutting certain more complicated features. Other features like user authentication proved to be quite a challenge.
Accomplishments that we're proud of
- We are proud of figuring out how to use version control within a group setting.
- Working REST API with multiple CRUD routes to interact with the MongoDB user collection.
- Responsive Navbar to facilitate ease of user interaction.
What we learned
- Chunk project plan into smaller more codable steps and features.
- Build out client-side JavaScript prior to tackling the api and database.
- Use hardcoded JSON data to test functionality
- Importance of Version Control in a group project.
- Commit smaller changes more often
What's next for Optimum NutriFit
- Create an area within the web app that allows for a user’s weight to be added and stored. Display weight trends with a graph using the date and weight
- Be able to use past saved meal data to input again when the same meal was consumed. This allows for ease of meal/nutrition data entry and will become personalized to each user
- Expand the meal table display to include more visually appealing data and trends in user’s nutrition.
Log in or sign up for Devpost to join the conversation.