Diet web application

This project aimed to design a comprehensive database for food market products and build two complementary web applications to utilize the database's information. The primary objective was to provide users easy access to food product data, including nutritional information, and offer a personalized tool for analyzing dietary habits. The project catered to casual consumers and individuals interested in detailed nutritional analysis by developing a well-structured backend and intuitive front-end applications.

bg
Diet web application

Database Design

  • Objective: Create a centralized repository for food products and their nutritional content, facilitating efficient data retrieval for various use cases.
  • Structure: the database was normalized to optimize performance, with tables for food categories (e.g., fruits, vegetables, dairy), individual food products, nutrient composition (calories, macronutrients, micronutrients), serving sizes and units
  • Data Integrity: Rigorous constraints were applied to ensure data accuracy and consistency, including checks for valid nutrient ranges and data types.
  • Scalability: The database was designed with scalability in mind, allowing for the easy addition of new food products, categories, and nutrients over time.

Web Application 1: Food Product Explorer

  • Purpose: A user-friendly website where visitors can search for and view detailed information about food products and their nutrient composition.
  • Key Features: users can search for products by name, category, or nutrient content (e.g., high protein, low carb), each food product has its page displaying its nutritional breakdown (calories, vitamins, minerals, etc.), and users can adjust serving sizes to see how nutrient values change dynamically.
  • Technology Stack: Built using a combination of front-end technologies (HTML, CSS, JavaScript) and a back-end API that connects to the database (Node.js with Express).
  • User Experience: The interface was designed to be clean, mobile-responsive, and easy to navigate, ensuring accessibility for users across different devices.

Web Application 2: Nutritional Analysis Tool

  • Purpose: An analytical tool that helps users track their daily food intake and evaluate their dietary habits based on nutritional recommendations.
  • Key Features: users can log the foods they eat throughout the day by selecting from the product database or manually entering items, the app calculates the total daily dietary intake (calories, macros, vitamins, minerals) and compares it against recommended daily values, users can view trends over time, identifying patterns in their eating habits and areas for improvement, the app can send alerts when certain nutrient thresholds (e.g., too much sugar or too few vitamins) are exceeded.
  • Technology Stack: Built using a full-stack framework (React.js on the front end and Node.js on the back end) with seamless integration to the central database.
  • Data Security: User data is stored securely with encryption, and the app follows the best privacy and protection practices.

Outcome

The project successfully delivered a robust database with two fully functioning web applications. Users can now easily browse information on food products and analyze their eating habits effectively. Combining a solid backend and user-friendly front-end applications created a seamless experience, empowering users to make informed diet decisions.