Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

35 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🍲 Smart Bhojan: Personalized Nutrition & Recipe Dashboard

Smart Bhojan is a Streamlit-based web application designed to help users understand the nutritional profile of Indian dishes. It calculates a custom health score, visualizes macronutrients, and provides downloadable PDF recipe reports.

πŸ“– How to Use

  1. Search: Use the sidebar to search for your favorite Indian dish.
  2. Analyze: Check the Health Score and the macronutrient breakdown chart.
  3. Customize: Adjust the "Target kcal" slider to see how the meal fits your goals.
  4. Download: Click the "Download PDF Report" button to save the recipe and nutrition facts offline.

πŸ”— Live Demo

Check out the live app here: Smart Bhojan Web App

πŸš€ Features

  • Health Scoring Engine: Uses a custom algorithm to rate food from 0-10 (Super Food to Indulgent).
  • Nutritional Visualization: Horizontal bar charts showing Protein, Carbs, and Fat content.
  • Dynamic Search: Filter through dishes using the sidebar search and selection tools.
  • PDF Report Generator: Export recipes and nutritional facts into a professionally formatted PDF with custom borders.
  • Responsive UI: Custom CSS "Green Frame" design for a clean, modern aesthetic.

πŸ› οΈ Tech Stack

  • Frontend: Streamlit
  • Data Handling: Pandas
  • Visualization: Matplotlib
  • PDF Generation: ReportLab
  • Styling: Custom CSS & HTML Injection

πŸ“‚ Project Structure

β”œβ”€β”€ app.py                # Main Streamlit application code
β”œβ”€β”€ enriched_food_metadata_english.csv  # Food dataset (Names, Macros, Instructions)
β”œβ”€β”€ images/               # Folder containing food images (e.g., Panner_Tikka.jpg)
└── README.md             # Project documentation

βš™οΈ Installation & Setup

  1. Clone the repository:

    git clone https://github.com
    cd smart-bhojan
  2. Install dependencies:

    pip install streamlit pandas matplotlib reportlab
  3. Prepare your Data:

    • Ensure your enriched_food_metadata_english.csv includes columns: food_name, Protein (g), Carbs (g), Fat (g), Calories (kcal), and Instructions.
    • Place images in the images/ folder with names matching the food_name (e.g., samosa.jpg).
  4. Run the App Locally:

    streamlit run app.py

πŸ’‘ How it Works

The health score is calculated based on a weighted formula: Score = 6.0 + [(Protein * 2.5) - (Fat * 1.5) - (Calories / 100)] / 5 This rewards high protein content while penalizing excessive fats and empty calories.

Created by Srinivasta πŸ₯— πŸ₯˜ 🍱 πŸ₯ž πŸ₯™

About

🍲 Smart Bhojan: A nutrition-focused dashboard for Indian recipes. Features automated health scoring, macronutrient visualization, and downloadable PDF recipe reports. Built with Streamlit.

Topics

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages