AnsoATC commited on
Commit
f6e45d4
·
verified ·
1 Parent(s): bea5332

Upload 11 files

Browse files
Dockerfile ADDED
@@ -0,0 +1,18 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Use an official Python runtime as a parent image
2
+ FROM python:3.10-slim
3
+
4
+ # Set the working directory in the container
5
+ WORKDIR /app
6
+
7
+ # Copy requirements and install them securely
8
+ COPY requirements.txt .
9
+ RUN pip install --no-cache-dir -r requirements.txt
10
+
11
+ # Copy the rest of the workspace
12
+ COPY . .
13
+
14
+ # Expose port 7860 (Hugging Face default)
15
+ EXPOSE 7860
16
+
17
+ # Command to run the FastAPI server
18
+ CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "7860"]
app.py ADDED
@@ -0,0 +1,186 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # ==============================================================================
2
+ # EATHVISION API SERVER (Production Version)
3
+ # Description: High-performance FastAPI server running native YOLO (.pt) models.
4
+ # Integrates dual USDA databases for macros and ingredients.
5
+ # ==============================================================================
6
+
7
+ import os
8
+ import io
9
+ import pandas as pd
10
+ from fastapi import FastAPI, File, UploadFile, Form, HTTPException
11
+ from fastapi.responses import JSONResponse, FileResponse
12
+ from fastapi.staticfiles import StaticFiles
13
+ from fastapi.middleware.cors import CORSMiddleware
14
+ from ultralytics import YOLO
15
+ from PIL import Image
16
+ import warnings
17
+
18
+ warnings.filterwarnings('ignore')
19
+
20
+ # --- 1. Server Configuration ---
21
+ app = FastAPI(
22
+ title="eath API",
23
+ description="Production endpoint for dish classification and advanced nutrition tracking.",
24
+ version="1.0.0"
25
+ )
26
+
27
+ # Enable CORS for external frontend requests if needed
28
+ app.add_middleware(
29
+ CORSMiddleware,
30
+ allow_origins=["*"],
31
+ allow_credentials=True,
32
+ allow_methods=["*"],
33
+ allow_headers=["*"],
34
+ )
35
+
36
+ # Mount the static directory to serve HTML, CSS, JS, and Images
37
+ app.mount("/static", StaticFiles(directory="static"), name="static")
38
+
39
+ # --- 2. Global Variables & Resource Loading ---
40
+ MODELS_DIR = "models"
41
+ DATA_DIR = "data"
42
+
43
+ # File paths for both databases
44
+ MACROS_CSV_PATH = os.path.join(DATA_DIR, "Dishes Information and DV values V1.csv")
45
+ INGREDIENTS_CSV_PATH = os.path.join(DATA_DIR, "Nutrition Ingredient Database- Version 1.csv")
46
+
47
+ loaded_models = {}
48
+ macros_db = None
49
+ ingredients_db = None
50
+
51
+ def load_resources():
52
+ """
53
+ Loads YOLO .pt models into memory and parses both nutrition CSVs.
54
+ """
55
+ global loaded_models, macros_db, ingredients_db
56
+ print("[INIT] Loading AI Models into memory...")
57
+
58
+ # Load YOLO-X (High Precision)
59
+ yolo_x_path = os.path.join(MODELS_DIR, "best_yolo_x.pt")
60
+ if os.path.exists(yolo_x_path):
61
+ loaded_models["yolo_x"] = YOLO(yolo_x_path, task="classify")
62
+ print(" -> YOLO-X Loaded Successfully.")
63
+
64
+ # Load YOLO-S (High Speed)
65
+ yolo_s_path = os.path.join(MODELS_DIR, "best_yolo_s.pt")
66
+ if os.path.exists(yolo_s_path):
67
+ loaded_models["yolo_s"] = YOLO(yolo_s_path, task="classify")
68
+ print(" -> YOLO-S Loaded Successfully.")
69
+
70
+ # Load Databases
71
+ print("[INIT] Loading Databases...")
72
+ try:
73
+ macros_db = pd.read_csv(MACROS_CSV_PATH)
74
+ macros_db.columns = macros_db.columns.str.strip()
75
+ print(f" -> Macros DB Loaded: {len(macros_db)} entries.")
76
+ except Exception as e:
77
+ print(f"[ERROR] Failed to load Macros CSV: {e}")
78
+
79
+ try:
80
+ ingredients_db = pd.read_csv(INGREDIENTS_CSV_PATH)
81
+ ingredients_db.columns = ingredients_db.columns.str.strip()
82
+ print(f" -> Ingredients DB Loaded: {len(ingredients_db)} entries.")
83
+ except Exception as e:
84
+ print(f"[ERROR] Failed to load Ingredients CSV: {e}")
85
+
86
+ # Initialize resources on startup
87
+ load_resources()
88
+
89
+ # --- 3. API Endpoints ---
90
+
91
+ @app.get("/")
92
+ async def serve_frontend():
93
+ """Serves the main HTML interface from the root URL."""
94
+ return FileResponse("static/index.html")
95
+
96
+ @app.post("/api/predict")
97
+ async def predict_dish(
98
+ file: UploadFile = File(...),
99
+ model_type: str = Form("yolo_x"),
100
+ portion_g: int = Form(100)
101
+ ):
102
+ """
103
+ Core prediction endpoint.
104
+ Returns AI prediction, calculated macros, and ingredient list.
105
+ """
106
+ if model_type not in loaded_models:
107
+ raise HTTPException(status_code=400, detail=f"Model '{model_type}' is currently unavailable.")
108
+
109
+ # Read and convert image
110
+ try:
111
+ image_bytes = await file.read()
112
+ image = Image.open(io.BytesIO(image_bytes)).convert("RGB")
113
+ except Exception:
114
+ raise HTTPException(status_code=400, detail="Invalid image file format.")
115
+
116
+ # 1. AI Inference
117
+ try:
118
+ model = loaded_models[model_type]
119
+ results = model(image, imgsz=320, verbose=False)
120
+
121
+ top1_idx = results[0].probs.top1
122
+ raw_class_name = results[0].names[top1_idx]
123
+ confidence = float(results[0].probs.top1conf)
124
+
125
+ formatted_dish_name = raw_class_name.replace('_', ' ').title()
126
+ except Exception as e:
127
+ raise HTTPException(status_code=500, detail=f"Inference failed: {str(e)}")
128
+
129
+ # 2. Extract Macros
130
+ nutrition_data = {"status": "not_found", "message": "Macros not found."}
131
+ if macros_db is not None:
132
+ # Assuming the column is 'FoodName' or similar. Adjust if your CSV differs.
133
+ # Using a flexible search to avoid exact match case issues
134
+ match = macros_db[macros_db.iloc[:, 0].astype(str).str.contains(formatted_dish_name, case=False, na=False)]
135
+
136
+ if not match.empty:
137
+ base_data = match.iloc[0]
138
+ multiplier = portion_g / 100.0
139
+
140
+ def safe_calc(col_name):
141
+ try:
142
+ # Fetch by exact name if exists, else return 0
143
+ if col_name in base_data:
144
+ val = float(base_data[col_name])
145
+ else:
146
+ val = 0.0
147
+ return round(val * multiplier, 1)
148
+ except:
149
+ return 0.0
150
+
151
+ nutrition_data = {
152
+ "status": "success",
153
+ "portion_g": portion_g,
154
+ "base_data": {
155
+ "energy_kcal": safe_calc("Energy_kcal"),
156
+ "protein_g": safe_calc("Protein_g"),
157
+ "fat_g": safe_calc("Fat_g"),
158
+ "carbs_g": safe_calc("Carbs_g")
159
+ }
160
+ }
161
+
162
+ # 3. Extract Ingredients
163
+ ingredients_list = []
164
+ if ingredients_db is not None:
165
+ # Assuming first column is the dish name and the second contains ingredients
166
+ ing_match = ingredients_db[ingredients_db.iloc[:, 0].astype(str).str.contains(formatted_dish_name, case=False, na=False)]
167
+ if not ing_match.empty:
168
+ # Convert the matched row's ingredient column to a string
169
+ raw_ingredients = str(ing_match.iloc[0, 1])
170
+ # Split by comma to create a clean list for the frontend
171
+ ingredients_list = [ing.strip() for ing in raw_ingredients.split(',') if ing.strip()]
172
+
173
+ # 4. Final Response Payload
174
+ return JSONResponse(content={
175
+ "ai_prediction": {
176
+ "model_used": model_type,
177
+ "dish_name": formatted_dish_name,
178
+ "confidence": round(confidence * 100, 2)
179
+ },
180
+ "nutrition_insights": nutrition_data,
181
+ "ingredients": ingredients_list
182
+ })
183
+
184
+ if __name__ == "__main__":
185
+ import uvicorn
186
+ uvicorn.run("app:app", host="0.0.0.0", port=8000, reload=True)
data/Dishes Information and DV values V1.csv ADDED
@@ -0,0 +1,251 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ FoodName,Basis,Energy_kcal,Protein_g,Fat_g,Fiber_g,Calcium_mg,Iron_mg,VitaminA_mcg,VitaminC_mg,VitaminD_mcg,DV_Energy_%,DV_Protein_%,DV_Fat_%,DV_Fiber_%,DV_Calcium_%,DV_Iron_%,DV_VitA_%,DV_VitC_%,DV_VitD_%,Cuisine,Food_Category
2
+ White Rice,Per 100g,505,33.7,33.0,9.6,227,8.6,320,91.2,7.95,25.2,67.4,42.3,34.3,17.5,47.8,35.6,101.3,39.8,Global,Rice Dish
3
+ Brown Rice,Per 100g,109,28.8,30.1,8.7,152,5.9,364,51.8,3.92,5.5,57.6,38.6,31.1,11.7,32.8,40.4,57.6,19.6,Global,Rice Dish
4
+ Basmati Rice,Per 100g,150,33.6,28.2,2.7,90,6.0,127,12.5,4.31,7.5,67.2,36.2,9.6,6.9,33.3,14.1,13.9,21.5,Global,Rice Dish
5
+ Jasmine Rice,Per 100g,245,8.1,2.3,11.0,74,1.2,202,21.9,7.57,12.2,16.2,2.9,39.3,5.7,6.7,22.4,24.3,37.9,Global,Rice Dish
6
+ Wild Rice,Per 100g,455,25.8,4.5,6.7,161,7.3,470,80.7,9.82,22.8,51.6,5.8,23.9,12.4,40.6,52.2,89.7,49.1,Global,Rice Dish
7
+ Quinoa,Per 100g,249,16.3,2.7,9.0,129,8.6,857,89.4,0.53,12.4,32.6,3.5,32.1,9.9,47.8,95.2,99.3,2.7,Global,Other
8
+ Bulgur,Per 100g,277,26.6,20.1,10.5,110,3.8,755,52.9,1.45,13.9,53.2,25.8,37.5,8.5,21.1,83.9,58.8,7.2,Global,Other
9
+ Couscous,Per 100g,516,19.3,39.5,2.3,39,9.8,353,72.9,5.08,25.8,38.6,50.6,8.2,3.0,54.4,39.2,81.0,25.4,Global,Other
10
+ Barley,Per 100g,442,19.7,30.6,5.6,224,6.3,704,13.7,7.04,22.1,39.4,39.2,20.0,17.2,35.0,78.2,15.2,35.2,Global,Other
11
+ Oats,Per 100g,58,32.9,16.2,10.0,214,3.7,689,22.3,6.68,2.9,65.8,20.8,35.7,16.5,20.6,76.6,24.8,33.4,Global,Other
12
+ Polenta,Per 100g,563,26.7,5.0,3.9,226,5.4,54,44.7,5.67,28.1,53.4,6.4,13.9,17.4,30.0,6.0,49.7,28.3,Global,Other
13
+ Millet,Per 100g,518,1.6,18.4,4.2,260,8.2,483,71.0,5.33,25.9,3.2,23.6,15.0,20.0,45.6,53.7,78.9,26.7,Global,Other
14
+ Sorghum,Per 100g,420,4.0,7.0,11.8,236,3.4,110,30.8,8.0,21.0,8.0,9.0,42.1,18.2,18.9,12.2,34.2,40.0,Global,Other
15
+ Buckwheat,Per 100g,240,33.0,14.7,13.6,290,8.2,233,89.9,2.82,12.0,66.0,18.8,48.6,22.3,45.6,25.9,99.9,14.1,Global,Other
16
+ Pasta,Per 100g,262,13.9,36.8,6.2,284,6.6,340,3.1,4.3,13.1,27.8,47.2,22.1,21.8,36.7,37.8,3.4,21.5,Western / European,Other
17
+ Whole Wheat Pasta,Per 100g,600,31.7,39.2,0.9,99,8.0,175,53.6,3.07,30.0,63.4,50.3,3.2,7.6,44.4,19.4,59.6,15.3,Western / European,Other
18
+ Lasagna,Per 100g,124,25.3,38.3,9.7,22,4.5,5,20.3,6.68,6.2,50.6,49.1,34.6,1.7,25.0,0.6,22.6,33.4,Western / European,Other
19
+ Risotto,Per 100g,322,4.9,37.0,11.8,26,3.7,618,54.5,0.28,16.1,9.8,47.4,42.1,2.0,20.6,68.7,60.6,1.4,Western / European,Rice Dish
20
+ Fried Rice,Per 100g,492,8.6,1.9,10.8,272,6.3,124,50.2,4.11,24.6,17.2,2.4,38.6,20.9,35.0,13.8,55.8,20.6,Global,Rice Dish
21
+ Vegetable Pulao,Per 100g,460,5.4,32.7,0.7,234,6.6,236,33.8,7.72,23.0,10.8,41.9,2.5,18.0,36.7,26.2,37.6,38.6,Global,Rice Dish
22
+ Chicken Biryani,Per 100g,424,28.8,24.9,14.9,292,5.3,222,30.5,1.86,21.2,57.6,31.9,53.2,22.5,29.4,24.7,33.9,9.3,Indian / South Asian,Rice Dish
23
+ Mutton Biryani,Per 100g,170,11.7,32.3,7.4,181,0.9,284,11.2,5.3,8.5,23.4,41.4,26.4,13.9,5.0,31.6,12.4,26.5,Indian / South Asian,Rice Dish
24
+ Khichdi,Per 100g,111,18.4,27.9,5.4,300,6.0,174,48.6,5.25,5.5,36.8,35.8,19.3,23.1,33.3,19.3,54.0,26.2,Indian / South Asian,Other
25
+ Upma,Per 100g,460,13.9,12.2,8.8,55,2.4,141,16.6,4.07,23.0,27.8,15.6,31.4,4.2,13.3,15.7,18.4,20.4,Indian / South Asian,Other
26
+ Poha,Per 100g,83,19.1,9.1,11.5,27,3.4,380,80.3,0.27,4.2,38.2,11.7,41.1,2.1,18.9,42.2,89.2,1.4,Indian / South Asian,Other
27
+ Idli,Per 100g,600,12.9,32.9,11.4,137,4.6,834,68.0,0.38,30.0,25.8,42.2,40.7,10.5,25.6,92.7,75.6,1.9,Indian / South Asian,Other
28
+ Dosa,Per 100g,352,12.1,12.1,2.5,87,1.6,129,89.5,3.18,17.6,24.2,15.5,8.9,6.7,8.9,14.3,99.4,15.9,Indian / South Asian,Other
29
+ Rava Dosa,Per 100g,169,10.0,1.8,9.9,41,5.4,718,78.1,3.44,8.5,20.0,2.3,35.4,3.2,30.0,79.8,86.8,17.2,Indian / South Asian,Other
30
+ Uttapam,Per 100g,145,21.1,21.3,14.9,142,0.6,893,88.8,3.28,7.2,42.2,27.3,53.2,10.9,3.3,99.2,98.7,16.4,Global,Other
31
+ Chapati,Per 100g,168,24.2,17.8,7.4,96,4.1,896,65.2,6.62,8.4,48.4,22.8,26.4,7.4,22.8,99.6,72.4,33.1,Global,Bread
32
+ Paratha,Per 100g,93,1.1,22.1,9.0,144,4.4,374,98.1,0.41,4.7,2.2,28.3,32.1,11.1,24.4,41.6,109.0,2.0,Indian / South Asian,Bread
33
+ Naan,Per 100g,122,11.8,39.1,8.5,99,4.7,384,14.0,1.74,6.1,23.6,50.1,30.4,7.6,26.1,42.7,15.6,8.7,Indian / South Asian,Bread
34
+ Pita Bread,Per 100g,439,5.0,34.3,6.1,164,8.9,172,75.6,4.04,21.9,10.0,44.0,21.8,12.6,49.4,19.1,84.0,20.2,Global,Bread
35
+ Arabic Bread,Per 100g,61,29.1,35.6,10.7,139,1.2,681,38.0,1.98,3.0,58.2,45.6,38.2,10.7,6.7,75.7,42.2,9.9,Global,Bread
36
+ Whole Wheat Bread,Per 100g,172,14.4,37.6,1.8,185,3.2,17,65.3,8.89,8.6,28.8,48.2,6.4,14.2,17.8,1.9,72.6,44.5,Global,Bread
37
+ White Bread,Per 100g,596,19.1,1.7,10.5,264,4.4,732,72.1,2.98,29.8,38.2,2.2,37.5,20.3,24.4,81.3,80.1,14.9,Global,Bread
38
+ Bagel,Per 100g,504,4.7,4.1,14.6,256,5.6,181,3.4,2.05,25.2,9.4,5.3,52.1,19.7,31.1,20.1,3.8,10.2,Western / European,Bread
39
+ Croissant,Per 100g,50,20.6,24.5,1.8,57,4.0,4,35.7,3.73,2.5,41.2,31.4,6.4,4.4,22.2,0.4,39.7,18.6,Western / European,Bread
40
+ Garlic Bread,Per 100g,525,25.6,12.8,14.5,252,8.9,664,86.0,1.58,26.2,51.2,16.4,51.8,19.4,49.4,73.8,95.6,7.9,Global,Bread
41
+ Pizza Margherita,Per 100g,151,29.4,25.1,5.7,221,7.4,222,73.6,1.19,7.5,58.8,32.2,20.4,17.0,41.1,24.7,81.8,5.9,Western / European,Other
42
+ Chicken Shawarma,Per 100g,317,6.6,32.0,9.3,72,2.2,786,29.6,5.32,15.8,13.2,41.0,33.2,5.5,12.2,87.3,32.9,26.6,Middle Eastern / Gulf,Meat
43
+ Shawarma Plate,Per 100g,98,26.8,29.2,9.0,152,1.3,547,9.0,9.78,4.9,53.6,37.4,32.1,11.7,7.2,60.8,10.0,48.9,Middle Eastern / Gulf,Other
44
+ Beef Shawarma,Per 100g,397,0.6,19.1,11.6,56,4.8,31,9.3,9.74,19.9,1.2,24.5,41.4,4.3,26.7,3.4,10.3,48.7,Middle Eastern / Gulf,Meat
45
+ Falafel,Per 100g,300,32.8,31.4,9.0,290,4.4,229,28.1,4.31,15.0,65.6,40.3,32.1,22.3,24.4,25.4,31.2,21.5,Global,Other
46
+ Hummus,Per 100g,597,10.4,31.6,3.5,170,4.4,174,7.2,0.78,29.8,20.8,40.5,12.5,13.1,24.4,19.3,8.0,3.9,Global,Other
47
+ Baba Ganoush,Per 100g,46,14.6,7.6,13.2,161,0.3,111,84.6,2.5,2.3,29.2,9.7,47.1,12.4,1.7,12.3,94.0,12.5,Global,Other
48
+ Mutabbal,Per 100g,190,27.6,27.3,11.3,28,5.1,659,21.6,6.92,9.5,55.2,35.0,40.4,2.2,28.3,73.2,24.0,34.6,Global,Other
49
+ Tabbouleh,Per 100g,116,33.8,37.1,2.9,146,3.4,483,12.6,2.1,5.8,67.6,47.6,10.4,11.2,18.9,53.7,14.0,10.5,Middle Eastern / Gulf,Other
50
+ Fattoush,Per 100g,400,11.9,7.1,9.8,199,0.9,887,89.2,5.11,20.0,23.8,9.1,35.0,15.3,5.0,98.6,99.1,25.6,Middle Eastern / Gulf,Other
51
+ Kibbeh,Per 100g,299,26.1,0.5,8.9,129,2.6,687,24.2,0.35,14.9,52.2,0.6,31.8,9.9,14.4,76.3,26.9,1.7,Middle Eastern / Gulf,Other
52
+ Kibbeh Nayeh,Per 100g,310,7.6,31.3,1.4,295,0.6,120,95.1,5.82,15.5,15.2,40.1,5.0,22.7,3.3,13.3,105.7,29.1,Middle Eastern / Gulf,Other
53
+ Manakish Zaatar,Per 100g,321,27.7,25.4,0.5,90,4.2,894,33.6,7.63,16.1,55.4,32.6,1.8,6.9,23.3,99.3,37.3,38.1,Middle Eastern / Gulf,Bread
54
+ Manakish Cheese,Per 100g,376,2.8,17.8,12.0,64,7.8,239,87.6,6.72,18.8,5.6,22.8,42.9,4.9,43.3,26.6,97.3,33.6,Middle Eastern / Gulf,Bread
55
+ Cheese Sambousek,Per 100g,74,1.4,12.1,2.0,154,7.2,123,48.9,3.79,3.7,2.8,15.5,7.1,11.8,40.0,13.7,54.3,18.9,Middle Eastern / Gulf,Dairy
56
+ Meat Sambousek,Per 100g,296,3.0,4.5,12.6,280,4.6,800,97.5,6.73,14.8,6.0,5.8,45.0,21.5,25.6,88.9,108.3,33.7,Middle Eastern / Gulf,Other
57
+ Warak Enab,Per 100g,323,7.3,29.3,13.8,119,8.4,219,19.7,8.96,16.2,14.6,37.6,49.3,9.2,46.7,24.3,21.9,44.8,Global,Other
58
+ Mahshi,Per 100g,74,10.8,10.9,7.5,132,7.9,731,60.9,2.98,3.7,21.6,14.0,26.8,10.2,43.9,81.2,67.7,14.9,Global,Other
59
+ Molokhia,Per 100g,556,21.9,5.4,0.3,115,1.5,496,76.0,2.7,27.8,43.8,6.9,1.1,8.8,8.3,55.1,84.4,13.5,Global,Other
60
+ Chicken Machboos,Per 100g,573,29.6,34.3,10.7,38,7.3,242,1.3,1.76,28.6,59.2,44.0,38.2,2.9,40.6,26.9,1.4,8.8,Middle Eastern / Gulf,Rice Dish
61
+ Lamb Machboos,Per 100g,388,16.3,7.4,5.7,59,2.6,215,45.8,8.81,19.4,32.6,9.5,20.4,4.5,14.4,23.9,50.9,44.0,Middle Eastern / Gulf,Rice Dish
62
+ Kabsa,Per 100g,499,23.6,20.2,9.6,105,5.0,356,37.8,1.29,24.9,47.2,25.9,34.3,8.1,27.8,39.6,42.0,6.5,Middle Eastern / Gulf,Rice Dish
63
+ Mandi,Per 100g,588,10.3,7.5,10.0,248,2.5,579,11.4,0.43,29.4,20.6,9.6,35.7,19.1,13.9,64.3,12.7,2.1,Middle Eastern / Gulf,Rice Dish
64
+ Harees,Per 100g,490,1.3,28.9,7.1,212,7.1,487,72.6,5.76,24.5,2.6,37.1,25.4,16.3,39.4,54.1,80.7,28.8,Middle Eastern / Gulf,Other
65
+ Jareesh,Per 100g,328,29.1,6.7,8.5,121,5.2,667,73.3,5.47,16.4,58.2,8.6,30.4,9.3,28.9,74.1,81.4,27.3,Middle Eastern / Gulf,Other
66
+ Thareed,Per 100g,249,8.5,25.7,8.2,300,7.3,680,24.4,9.7,12.4,17.0,32.9,29.3,23.1,40.6,75.6,27.1,48.5,Middle Eastern / Gulf,Other
67
+ Luqaimat,Per 100g,241,30.3,27.1,0.4,263,5.9,779,62.7,9.91,12.0,60.6,34.7,1.4,20.2,32.8,86.6,69.7,49.5,Middle Eastern / Gulf,Other
68
+ Umm Ali,Per 100g,104,8.8,36.8,1.6,30,0.3,181,76.3,9.12,5.2,17.6,47.2,5.7,2.3,1.7,20.1,84.8,45.6,Global,Other
69
+ Basbousa,Per 100g,48,20.9,22.5,10.0,171,2.8,170,49.7,3.51,2.4,41.8,28.8,35.7,13.2,15.6,18.9,55.2,17.5,Global,Dessert
70
+ Kunafa,Per 100g,85,33.0,17.3,12.1,241,0.9,467,28.7,7.27,4.2,66.0,22.2,43.2,18.5,5.0,51.9,31.9,36.4,Middle Eastern / Gulf,Dessert
71
+ Baklava,Per 100g,441,7.4,36.6,11.9,284,5.4,188,25.4,7.01,22.1,14.8,46.9,42.5,21.8,30.0,20.9,28.2,35.0,Middle Eastern / Gulf,Dessert
72
+ Date Maamoul,Per 100g,157,26.8,24.2,4.2,205,8.9,667,16.3,2.59,7.8,53.6,31.0,15.0,15.8,49.4,74.1,18.1,13.0,Global,Other
73
+ Date Syrup,Per 100g,70,0.7,15.2,8.3,29,7.3,276,92.2,2.79,3.5,1.4,19.5,29.6,2.2,40.6,30.7,102.4,14.0,Global,Other
74
+ Arabic Coffee,Per 100g,511,31.9,7.9,5.8,188,8.5,600,50.1,5.8,25.6,63.8,10.1,20.7,14.5,47.2,66.7,55.7,29.0,Global,Beverage
75
+ Karak Tea,Per 100g,597,27.8,36.9,0.4,126,5.1,673,16.7,8.05,29.8,55.6,47.3,1.4,9.7,28.3,74.8,18.6,40.2,Global,Beverage
76
+ Labneh,Per 100g,152,33.4,7.7,14.5,15,6.8,822,74.8,8.36,7.6,66.8,9.9,51.8,1.2,37.8,91.3,83.1,41.8,Middle Eastern / Gulf,Dairy
77
+ Halloumi,Per 100g,564,34.6,20.4,14.3,159,7.9,522,95.3,7.93,28.2,69.2,26.2,51.1,12.2,43.9,58.0,105.9,39.6,Middle Eastern / Gulf,Dairy
78
+ Shish Tawook,Per 100g,357,16.8,26.9,10.5,284,3.4,521,2.3,8.7,17.8,33.6,34.5,37.5,21.8,18.9,57.9,2.6,43.5,Global,Other
79
+ Kofta Kebab,Per 100g,569,19.1,26.3,9.5,155,2.1,686,76.0,0.2,28.4,38.2,33.7,33.9,11.9,11.7,76.2,84.4,1.0,Global,Meat
80
+ Lamb Kebab,Per 100g,522,9.1,2.0,3.7,12,0.9,780,41.4,5.9,26.1,18.2,2.6,13.2,0.9,5.0,86.7,46.0,29.5,Global,Meat
81
+ Grilled Hammour,Per 100g,42,33.8,11.4,11.4,251,6.6,221,5.0,4.25,2.1,67.6,14.6,40.7,19.3,36.7,24.6,5.6,21.2,Middle Eastern / Gulf,Seafood
82
+ Sayadiyah,Per 100g,332,24.0,22.8,8.7,75,7.7,133,79.8,0.06,16.6,48.0,29.2,31.1,5.8,42.8,14.8,88.7,0.3,Middle Eastern / Gulf,Other
83
+ Balaleet,Per 100g,115,11.0,32.0,2.4,62,3.8,49,11.1,4.1,5.8,22.0,41.0,8.6,4.8,21.1,5.4,12.3,20.5,Middle Eastern / Gulf,Other
84
+ Saloona,Per 100g,259,14.8,6.0,12.9,12,2.4,658,35.7,4.87,13.0,29.6,7.7,46.1,0.9,13.3,73.1,39.7,24.3,Middle Eastern / Gulf,Other
85
+ Freekeh,Per 100g,243,25.7,24.2,1.2,197,8.1,431,66.1,9.96,12.2,51.4,31.0,4.3,15.2,45.0,47.9,73.4,49.8,Middle Eastern / Gulf,Rice Dish
86
+ Foul Medames,Per 100g,212,21.9,8.1,1.4,252,3.8,755,17.1,5.83,10.6,43.8,10.4,5.0,19.4,21.1,83.9,19.0,29.1,Middle Eastern / Gulf,Other
87
+ Adas Soup,Per 100g,411,27.9,15.7,8.6,234,6.9,352,72.2,8.98,20.5,55.8,20.1,30.7,18.0,38.3,39.1,80.2,44.9,Middle Eastern / Gulf,Other
88
+ Lentil Soup,Per 100g,244,25.4,4.2,3.2,221,2.6,347,78.6,8.7,12.2,50.8,5.4,11.4,17.0,14.4,38.6,87.3,43.5,Global,Other
89
+ Turkish Doner,Per 100g,33,6.6,3.1,7.1,43,3.8,44,95.5,3.71,1.7,13.2,4.0,25.4,3.3,21.1,4.9,106.1,18.6,Global,Other
90
+ Pide,Per 100g,22,4.9,36.0,13.3,253,5.8,784,89.8,7.38,1.1,9.8,46.2,47.5,19.5,32.2,87.1,99.8,36.9,Global,Bread
91
+ Lahmacun,Per 100g,342,27.4,13.6,13.3,256,8.4,118,54.4,9.08,17.1,54.8,17.4,47.5,19.7,46.7,13.1,60.4,45.4,Global,Bread
92
+ Grilled Chicken,Per 100g,52,23.0,13.4,8.7,245,9.3,583,94.7,7.47,2.6,46.0,17.2,31.1,18.8,51.7,64.8,105.2,37.4,Global,Meat
93
+ Fried Chicken,Per 100g,339,21.6,7.1,3.0,289,8.6,697,15.2,2.65,17.0,43.2,9.1,10.7,22.2,47.8,77.4,16.9,13.2,Global,Meat
94
+ Chicken Nuggets,Per 100g,502,11.5,22.9,5.8,214,8.7,428,13.0,5.61,25.1,23.0,29.4,20.7,16.5,48.3,47.6,14.4,28.1,Global,Meat
95
+ Beef Steak,Per 100g,336,16.9,38.4,6.0,269,4.6,385,32.4,2.63,16.8,33.8,49.2,21.4,20.7,25.6,42.8,36.0,13.2,Global,Meat
96
+ Ribeye Steak,Per 100g,302,25.9,2.2,2.4,185,2.9,192,48.3,1.77,15.1,51.8,2.8,8.6,14.2,16.1,21.3,53.7,8.8,Global,Meat
97
+ Lamb Chop,Per 100g,156,33.2,18.7,3.7,257,2.4,776,87.9,3.85,7.8,66.4,24.0,13.2,19.8,13.3,86.2,97.7,19.2,Global,Meat
98
+ Salmon,Per 100g,339,27.6,37.4,8.2,10,8.8,562,15.6,8.45,17.0,55.2,47.9,29.3,0.8,48.9,62.4,17.3,42.2,Global,Seafood
99
+ Tuna,Per 100g,169,3.7,0.0,6.4,155,2.5,579,11.5,1.47,8.5,7.4,0.0,22.9,11.9,13.9,64.3,12.8,7.3,Global,Seafood
100
+ Sardines,Per 100g,499,29.8,35.9,5.2,158,8.7,858,50.5,3.18,24.9,59.6,46.0,18.6,12.2,48.3,95.3,56.1,15.9,Global,Seafood
101
+ Shrimp,Per 100g,112,15.4,31.9,3.6,53,6.7,118,26.2,1.41,5.6,30.8,40.9,12.9,4.1,37.2,13.1,29.1,7.0,Global,Seafood
102
+ Crab,Per 100g,439,12.3,38.3,13.5,149,0.5,721,50.7,3.62,21.9,24.6,49.1,48.2,11.5,2.8,80.1,56.3,18.1,Global,Seafood
103
+ Lobster,Per 100g,562,33.7,3.9,6.1,182,2.8,302,68.9,3.79,28.1,67.4,5.0,21.8,14.0,15.6,33.6,76.6,18.9,Global,Seafood
104
+ Boiled Egg,Per 100g,224,29.1,35.7,10.5,64,7.1,144,85.1,7.17,11.2,58.2,45.8,37.5,4.9,39.4,16.0,94.6,35.9,Global,Other
105
+ Omelette,Per 100g,217,29.0,9.0,2.5,95,5.9,64,35.4,1.35,10.8,58.0,11.5,8.9,7.3,32.8,7.1,39.3,6.8,Global,Other
106
+ Paneer,Per 100g,350,27.4,29.5,0.7,246,0.5,166,6.9,7.88,17.5,54.8,37.8,2.5,18.9,2.8,18.4,7.7,39.4,Indian / South Asian,Other
107
+ Tofu,Per 100g,141,18.5,2.1,11.5,110,7.9,372,28.2,9.69,7.0,37.0,2.7,41.1,8.5,43.9,41.3,31.3,48.4,Global,Other
108
+ Tempeh,Per 100g,337,8.1,10.1,7.2,52,9.7,195,65.0,8.1,16.9,16.2,12.9,25.7,4.0,53.9,21.7,72.2,40.5,Global,Other
109
+ Seitan,Per 100g,99,10.7,25.6,8.8,259,4.6,464,76.8,2.86,5.0,21.4,32.8,31.4,19.9,25.6,51.6,85.3,14.3,Global,Other
110
+ Chickpeas,Per 100g,43,7.4,15.8,12.2,109,6.0,234,52.7,8.99,2.1,14.8,20.3,43.6,8.4,33.3,26.0,58.6,45.0,Global,Legume
111
+ Kidney Beans,Per 100g,370,7.7,16.1,0.5,42,3.9,862,42.3,1.96,18.5,15.4,20.6,1.8,3.2,21.7,95.8,47.0,9.8,Global,Legume
112
+ Black Beans,Per 100g,465,1.5,32.4,3.1,111,3.3,352,10.2,0.0,23.2,3.0,41.5,11.1,8.5,18.3,39.1,11.3,0.0,Global,Legume
113
+ Pinto Beans,Per 100g,307,24.5,6.0,7.4,16,2.4,733,81.7,3.52,15.3,49.0,7.7,26.4,1.2,13.3,81.4,90.8,17.6,Global,Legume
114
+ Lentils,Per 100g,234,5.1,10.4,1.1,287,3.8,888,5.8,5.52,11.7,10.2,13.3,3.9,22.1,21.1,98.7,6.4,27.6,Global,Legume
115
+ Edamame,Per 100g,109,25.9,24.2,6.0,175,5.9,157,27.0,9.49,5.5,51.8,31.0,21.4,13.5,32.8,17.4,30.0,47.5,Global,Legume
116
+ Protein Shake,Per 100g,228,14.3,15.4,14.6,194,2.0,691,54.8,1.54,11.4,28.6,19.7,52.1,14.9,11.1,76.8,60.9,7.7,Global,Other
117
+ Whey Protein,Per 100g,27,23.7,13.8,2.2,152,4.9,411,68.9,8.76,1.4,47.4,17.7,7.9,11.7,27.2,45.7,76.6,43.8,Global,Other
118
+ Greek Yogurt,Per 100g,47,1.7,12.3,1.9,202,0.5,546,62.4,9.31,2.4,3.4,15.8,6.8,15.5,2.8,60.7,69.3,46.6,Global,Dairy
119
+ Cottage Cheese,Per 100g,459,26.0,17.7,2.4,19,6.0,321,3.8,3.33,22.9,52.0,22.7,8.6,1.5,33.3,35.7,4.2,16.7,Global,Dairy
120
+ Turkey Breast,Per 100g,226,22.0,18.7,12.6,168,10.0,541,91.7,3.65,11.3,44.0,24.0,45.0,12.9,55.6,60.1,101.9,18.2,Global,Other
121
+ Duck,Per 100g,454,9.8,30.2,3.6,292,6.7,829,95.6,8.52,22.7,19.6,38.7,12.9,22.5,37.2,92.1,106.2,42.6,Global,Other
122
+ Sausage,Per 100g,123,0.5,20.9,8.8,44,1.4,397,62.8,2.26,6.2,1.0,26.8,31.4,3.4,7.8,44.1,69.8,11.3,Global,Other
123
+ Hot Dog,Per 100g,436,18.2,8.9,3.9,72,9.4,812,85.0,6.11,21.8,36.4,11.4,13.9,5.5,52.2,90.2,94.4,30.6,Global,Other
124
+ Pepperoni,Per 100g,469,13.2,36.2,7.9,203,4.4,32,73.7,0.29,23.4,26.4,46.4,28.2,15.6,24.4,3.6,81.9,1.4,Global,Other
125
+ Meatballs,Per 100g,334,3.1,35.8,10.4,208,7.6,694,56.3,6.04,16.7,6.2,45.9,37.1,16.0,42.2,77.1,62.6,30.2,Global,Other
126
+ Beef Burger Patty,Per 100g,203,26.4,30.5,2.7,292,6.8,70,19.9,0.91,10.2,52.8,39.1,9.6,22.5,37.8,7.8,22.1,4.5,Global,Meat
127
+ Chicken Burger Patty,Per 100g,424,13.7,21.4,3.9,186,3.2,281,1.5,7.23,21.2,27.4,27.4,13.9,14.3,17.8,31.2,1.7,36.2,Global,Meat
128
+ Fish Fillet,Per 100g,596,34.2,5.6,8.8,281,2.8,213,44.2,5.96,29.8,68.4,7.2,31.4,21.6,15.6,23.7,49.1,29.8,Global,Other
129
+ Chicken Tikka,Per 100g,482,30.9,35.6,10.5,131,1.5,192,27.7,7.77,24.1,61.8,45.6,37.5,10.1,8.3,21.3,30.8,38.8,Indian / South Asian,Meat
130
+ Butter Chicken,Per 100g,516,21.3,26.5,7.0,16,3.4,475,16.1,0.23,25.8,42.6,34.0,25.0,1.2,18.9,52.8,17.9,1.1,Global,Meat
131
+ Paneer Butter Masala,Per 100g,122,23.4,34.7,10.5,180,5.5,853,6.3,3.72,6.1,46.8,44.5,37.5,13.8,30.6,94.8,7.0,18.6,Indian / South Asian,Dairy
132
+ Dal Makhani,Per 100g,486,21.2,38.2,7.2,59,7.2,405,20.6,7.03,24.3,42.4,49.0,25.7,4.5,40.0,45.0,22.9,35.2,Indian / South Asian,Legume
133
+ Rajma,Per 100g,542,7.0,14.8,14.2,15,3.5,234,51.7,8.54,27.1,14.0,19.0,50.7,1.2,19.4,26.0,57.4,42.7,Indian / South Asian,Legume
134
+ Chole,Per 100g,296,10.4,12.5,9.4,39,4.6,67,94.7,5.8,14.8,20.8,16.0,33.6,3.0,25.6,7.4,105.2,29.0,Indian / South Asian,Legume
135
+ Egg Curry,Per 100g,282,11.8,24.8,14.6,148,2.2,462,60.7,4.86,14.1,23.6,31.8,52.1,11.4,12.2,51.3,67.4,24.3,Global,Meat
136
+ Chicken Korma,Per 100g,95,2.4,21.6,3.7,62,2.9,40,4.5,0.15,4.8,4.8,27.7,13.2,4.8,16.1,4.4,5.0,0.8,Indian / South Asian,Meat
137
+ Beef Curry,Per 100g,474,4.9,29.4,5.6,144,6.9,301,87.5,9.8,23.7,9.8,37.7,20.0,11.1,38.3,33.4,97.2,49.0,Global,Meat
138
+ Nihari,Per 100g,425,16.8,6.2,5.9,125,3.6,37,18.8,0.8,21.2,33.6,7.9,21.1,9.6,20.0,4.1,20.9,4.0,Indian / South Asian,Meat
139
+ Haleem,Per 100g,90,23.5,24.5,0.3,55,7.6,554,10.2,8.78,4.5,47.0,31.4,1.1,4.2,42.2,61.6,11.3,43.9,Indian / South Asian,Meat
140
+ Seekh Kebab,Per 100g,344,15.7,33.7,12.1,149,9.3,767,26.4,2.92,17.2,31.4,43.2,43.2,11.5,51.7,85.2,29.3,14.6,Global,Meat
141
+ Shami Kebab,Per 100g,409,5.9,29.7,14.3,225,1.9,817,25.4,9.1,20.4,11.8,38.1,51.1,17.3,10.6,90.8,28.2,45.5,Global,Meat
142
+ Broccoli,Per 100g,580,17.2,23.7,4.6,61,5.3,526,92.4,7.76,29.0,34.4,30.4,16.4,4.7,29.4,58.4,102.7,38.8,Global,Vegetable
143
+ Carrot,Per 100g,259,11.5,36.4,10.5,84,0.2,805,52.2,0.27,13.0,23.0,46.7,37.5,6.5,1.1,89.4,58.0,1.4,Global,Vegetable
144
+ Spinach,Per 100g,350,4.4,26.9,0.8,37,6.3,616,8.8,0.2,17.5,8.8,34.5,2.9,2.8,35.0,68.4,9.8,1.0,Global,Vegetable
145
+ Kale,Per 100g,413,10.5,28.7,5.3,133,6.7,597,67.5,6.85,20.6,21.0,36.8,18.9,10.2,37.2,66.3,75.0,34.2,Global,Vegetable
146
+ Zucchini,Per 100g,193,18.5,14.2,7.0,242,4.1,382,3.2,3.69,9.7,37.0,18.2,25.0,18.6,22.8,42.4,3.6,18.4,Global,Vegetable
147
+ Eggplant,Per 100g,47,26.8,13.1,2.6,161,2.6,685,58.3,4.81,2.4,53.6,16.8,9.3,12.4,14.4,76.1,64.8,24.1,Global,Vegetable
148
+ Okra,Per 100g,143,22.1,7.9,10.7,55,9.9,463,75.0,8.9,7.1,44.2,10.1,38.2,4.2,55.0,51.4,83.3,44.5,Global,Vegetable
149
+ Cabbage,Per 100g,453,33.6,12.1,5.0,234,8.7,224,25.3,6.75,22.7,67.2,15.5,17.9,18.0,48.3,24.9,28.1,33.8,Global,Vegetable
150
+ Cauliflower,Per 100g,375,29.4,17.8,0.6,271,5.9,567,13.0,7.92,18.8,58.8,22.8,2.1,20.8,32.8,63.0,14.4,39.6,Global,Vegetable
151
+ Bell Pepper,Per 100g,359,28.8,24.5,1.1,162,5.5,247,2.6,2.7,17.9,57.6,31.4,3.9,12.5,30.6,27.4,2.9,13.5,Global,Vegetable
152
+ Cucumber,Per 100g,162,26.9,20.5,5.9,187,6.5,314,2.2,0.33,8.1,53.8,26.3,21.1,14.4,36.1,34.9,2.4,1.7,Global,Vegetable
153
+ Tomato,Per 100g,328,12.0,29.5,8.2,53,8.8,867,63.8,2.34,16.4,24.0,37.8,29.3,4.1,48.9,96.3,70.9,11.7,Global,Vegetable
154
+ Corn,Per 100g,80,25.5,11.2,13.5,243,5.3,201,80.0,7.06,4.0,51.0,14.4,48.2,18.7,29.4,22.3,88.9,35.3,Global,Vegetable
155
+ Sweet Potato,Per 100g,384,14.0,13.7,3.5,135,8.9,18,24.8,7.02,19.2,28.0,17.6,12.5,10.4,49.4,2.0,27.6,35.1,Global,Vegetable
156
+ Potato,Per 100g,45,13.0,31.8,3.5,64,6.2,360,28.8,3.7,2.2,26.0,40.8,12.5,4.9,34.4,40.0,32.0,18.5,Global,Vegetable
157
+ Avocado,Per 100g,340,15.6,8.5,10.7,223,9.9,631,67.9,4.28,17.0,31.2,10.9,38.2,17.2,55.0,70.1,75.4,21.4,Global,Other
158
+ Pumpkin,Per 100g,244,14.4,7.5,10.4,9,2.1,650,43.0,5.33,12.2,28.8,9.6,37.1,0.7,11.7,72.2,47.8,26.7,Global,Vegetable
159
+ Beetroot,Per 100g,104,28.1,26.6,9.6,15,3.6,269,92.3,5.32,5.2,56.2,34.1,34.3,1.2,20.0,29.9,102.6,26.6,Global,Vegetable
160
+ Green Beans,Per 100g,102,32.3,13.8,12.6,26,8.2,623,65.9,7.19,5.1,64.6,17.7,45.0,2.0,45.6,69.2,73.2,36.0,Global,Legume
161
+ Peas,Per 100g,64,18.2,15.1,9.7,128,9.2,516,69.6,6.26,3.2,36.4,19.4,34.6,9.8,51.1,57.3,77.3,31.3,Global,Vegetable
162
+ Apple,Per 100g,41,13.1,37.2,5.9,193,9.1,98,41.2,3.1,2.1,26.2,47.7,21.1,14.8,50.6,10.9,45.8,15.5,Global,Fruit
163
+ Banana,Per 100g,528,33.9,31.4,13.3,173,4.0,785,86.7,4.55,26.4,67.8,40.3,47.5,13.3,22.2,87.2,96.3,22.7,Global,Fruit
164
+ Mango,Per 100g,98,34.2,22.7,3.0,262,4.8,49,35.6,5.35,4.9,68.4,29.1,10.7,20.2,26.7,5.4,39.6,26.7,Global,Fruit
165
+ Pineapple,Per 100g,562,19.6,23.5,6.1,18,7.1,603,25.0,1.77,28.1,39.2,30.1,21.8,1.4,39.4,67.0,27.8,8.8,Global,Fruit
166
+ Orange,Per 100g,81,28.6,29.9,13.4,277,7.7,197,26.0,8.97,4.0,57.2,38.3,47.9,21.3,42.8,21.9,28.9,44.9,Global,Fruit
167
+ Grapes,Per 100g,512,4.1,10.7,7.0,105,1.2,516,71.8,6.53,25.6,8.2,13.7,25.0,8.1,6.7,57.3,79.8,32.6,Global,Fruit
168
+ Watermelon,Per 100g,73,6.2,24.3,2.9,67,8.9,464,28.8,8.83,3.6,12.4,31.2,10.4,5.2,49.4,51.6,32.0,44.1,Global,Fruit
169
+ Papaya,Per 100g,513,0.0,30.2,13.1,128,5.7,883,75.3,1.17,25.7,0.0,38.7,46.8,9.8,31.7,98.1,83.7,5.8,Global,Fruit
170
+ Kiwi,Per 100g,130,6.8,27.6,13.0,250,5.4,527,20.2,6.16,6.5,13.6,35.4,46.4,19.2,30.0,58.6,22.4,30.8,Global,Fruit
171
+ Pomegranate,Per 100g,355,21.4,2.8,9.0,169,7.7,522,20.3,6.17,17.8,42.8,3.6,32.1,13.0,42.8,58.0,22.6,30.9,Global,Fruit
172
+ Dates,Per 100g,133,2.6,13.5,3.3,290,3.8,894,2.6,8.28,6.7,5.2,17.3,11.8,22.3,21.1,99.3,2.9,41.4,Global,Fruit
173
+ Fig,Per 100g,258,28.4,3.4,11.9,158,3.9,524,68.5,8.03,12.9,56.8,4.4,42.5,12.2,21.7,58.2,76.1,40.1,Global,Fruit
174
+ Pear,Per 100g,559,16.9,23.9,6.4,99,8.7,623,62.2,7.85,28.0,33.8,30.6,22.9,7.6,48.3,69.2,69.1,39.2,Global,Fruit
175
+ Peach,Per 100g,529,12.2,13.5,4.6,269,7.4,435,53.6,2.03,26.5,24.4,17.3,16.4,20.7,41.1,48.3,59.6,10.1,Global,Fruit
176
+ Plum,Per 100g,383,15.0,10.7,12.4,19,4.8,416,28.7,1.03,19.1,30.0,13.7,44.3,1.5,26.7,46.2,31.9,5.2,Global,Fruit
177
+ Blueberries,Per 100g,66,23.0,2.5,12.5,274,2.2,723,74.6,6.52,3.3,46.0,3.2,44.6,21.1,12.2,80.3,82.9,32.6,Global,Fruit
178
+ Strawberries,Per 100g,112,22.4,8.0,14.5,16,2.1,643,11.9,6.08,5.6,44.8,10.3,51.8,1.2,11.7,71.4,13.2,30.4,Global,Fruit
179
+ Raspberries,Per 100g,477,21.5,19.2,5.5,180,1.2,529,81.0,7.52,23.8,43.0,24.6,19.6,13.8,6.7,58.8,90.0,37.6,Global,Fruit
180
+ Coconut,Per 100g,63,34.8,29.8,13.7,199,9.4,178,67.3,5.6,3.1,69.6,38.2,48.9,15.3,52.2,19.8,74.8,28.0,Global,Fruit
181
+ Guava,Per 100g,444,1.6,1.2,0.3,274,4.1,4,52.5,7.66,22.2,3.2,1.5,1.1,21.1,22.8,0.4,58.3,38.3,Global,Fruit
182
+ Lychee,Per 100g,346,33.1,19.5,6.0,151,9.4,77,25.9,3.0,17.3,66.2,25.0,21.4,11.6,52.2,8.6,28.8,15.0,Global,Fruit
183
+ Passion Fruit,Per 100g,223,29.5,6.7,5.1,300,4.1,580,29.6,9.09,11.2,59.0,8.6,18.2,23.1,22.8,64.4,32.9,45.5,Global,Fruit
184
+ Apricot,Per 100g,112,17.8,24.4,14.6,170,4.4,726,13.2,1.6,5.6,35.6,31.3,52.1,13.1,24.4,80.7,14.7,8.0,Global,Fruit
185
+ Dragon Fruit,Per 100g,516,17.3,11.7,4.2,283,2.5,588,57.0,3.69,25.8,34.6,15.0,15.0,21.8,13.9,65.3,63.3,18.4,Global,Fruit
186
+ Mulberries,Per 100g,149,28.7,12.7,8.2,244,6.2,793,24.9,7.96,7.4,57.4,16.3,29.3,18.8,34.4,88.1,27.7,39.8,Global,Fruit
187
+ Custard Apple,Per 100g,164,6.9,2.0,4.1,63,9.2,167,13.7,3.52,8.2,13.8,2.6,14.6,4.8,51.1,18.6,15.2,17.6,Global,Fruit
188
+ Jackfruit,Per 100g,404,29.1,26.3,7.0,83,0.2,470,93.7,3.46,20.2,58.2,33.7,25.0,6.4,1.1,52.2,104.1,17.3,Global,Fruit
189
+ Sapodilla,Per 100g,276,32.6,0.7,3.6,238,5.0,673,70.5,4.73,13.8,65.2,0.9,12.9,18.3,27.8,74.8,78.3,23.7,Global,Fruit
190
+ Olives,Per 100g,234,5.0,7.9,4.5,61,2.7,47,50.1,9.98,11.7,10.0,10.1,16.1,4.7,15.0,5.2,55.7,49.9,Global,Fruit
191
+ Pickles,Per 100g,50,28.5,22.2,8.2,160,2.0,585,3.5,2.45,2.5,57.0,28.5,29.3,12.3,11.1,65.0,3.9,12.3,Global,Other
192
+ French Fries,Per 100g,418,25.0,25.0,12.2,224,5.4,396,85.9,9.56,20.9,50.0,32.1,43.6,17.2,30.0,44.0,95.4,47.8,Global,Other
193
+ Potato Chips,Per 100g,274,1.4,26.5,13.4,272,2.6,24,39.4,3.3,13.7,2.8,34.0,47.9,20.9,14.4,2.7,43.8,16.5,Global,Other
194
+ Nachos,Per 100g,342,21.5,21.4,5.4,15,3.1,558,20.9,0.75,17.1,43.0,27.4,19.3,1.2,17.2,62.0,23.2,3.8,Global,Other
195
+ Popcorn,Per 100g,254,34.5,10.6,14.4,187,9.5,523,1.0,1.89,12.7,69.0,13.6,51.4,14.4,52.8,58.1,1.1,9.4,Global,Other
196
+ Samosa,Per 100g,448,12.9,27.6,5.1,174,7.1,501,60.5,4.94,22.4,25.8,35.4,18.2,13.4,39.4,55.7,67.2,24.7,Indian / South Asian,Other
197
+ Spring Roll,Per 100g,284,10.0,35.7,12.6,90,0.8,197,41.2,6.34,14.2,20.0,45.8,45.0,6.9,4.4,21.9,45.8,31.7,Global,Other
198
+ Pakora,Per 100g,548,3.7,27.9,8.4,187,6.7,138,91.1,9.94,27.4,7.4,35.8,30.0,14.4,37.2,15.3,101.2,49.7,Indian / South Asian,Other
199
+ Vada,Per 100g,504,26.4,10.2,8.6,223,4.3,732,87.2,9.14,25.2,52.8,13.1,30.7,17.2,23.9,81.3,96.9,45.7,Indian / South Asian,Other
200
+ Chocolate Cake,Per 100g,416,24.7,26.9,11.5,268,8.4,666,10.1,7.21,20.8,49.4,34.5,41.1,20.6,46.7,74.0,11.2,36.0,Global,Dessert
201
+ Brownie,Per 100g,473,34.5,5.0,4.9,61,7.7,140,6.6,4.38,23.6,69.0,6.4,17.5,4.7,42.8,15.6,7.3,21.9,Global,Dessert
202
+ Cookies,Per 100g,110,20.0,20.1,10.8,69,6.1,810,63.8,9.46,5.5,40.0,25.8,38.6,5.3,33.9,90.0,70.9,47.3,Global,Dessert
203
+ Donut,Per 100g,300,26.5,35.0,12.5,264,1.0,49,55.7,8.5,15.0,53.0,44.9,44.6,20.3,5.6,5.4,61.9,42.5,Global,Dessert
204
+ Ice Cream,Per 100g,350,0.4,26.3,8.4,116,5.0,266,35.0,6.85,17.5,0.8,33.7,30.0,8.9,27.8,29.6,38.9,34.2,Global,Dessert
205
+ Kulfi,Per 100g,326,15.5,17.5,11.6,123,6.0,563,37.0,6.63,16.3,31.0,22.4,41.4,9.5,33.3,62.6,41.1,33.1,Indian / South Asian,Other
206
+ Cheesecake,Per 100g,249,22.1,2.5,12.5,174,4.3,811,13.1,8.56,12.4,44.2,3.2,44.6,13.4,23.9,90.1,14.6,42.8,Western / European,Dairy
207
+ Tiramisu,Per 100g,315,7.0,34.0,8.9,220,3.9,234,1.1,3.22,15.8,14.0,43.6,31.8,16.9,21.7,26.0,1.2,16.1,Western / European,Other
208
+ Milk Chocolate,Per 100g,397,16.9,6.7,9.5,33,6.1,226,45.4,7.8,19.9,33.8,8.6,33.9,2.5,33.9,25.1,50.4,39.0,Global,Dairy
209
+ Dark Chocolate,Per 100g,312,25.6,12.1,3.7,118,4.0,821,4.5,7.71,15.6,51.2,15.5,13.2,9.1,22.2,91.2,5.0,38.6,Global,Dessert
210
+ White Chocolate,Per 100g,504,22.8,13.4,1.3,238,9.2,599,12.1,8.39,25.2,45.6,17.2,4.6,18.3,51.1,66.6,13.4,42.0,Global,Dessert
211
+ Granola Bar,Per 100g,501,6.1,23.9,4.0,160,9.8,167,68.5,2.08,25.1,12.2,30.6,14.3,12.3,54.4,18.6,76.1,10.4,Global,Other
212
+ Energy Bar,Per 100g,368,31.0,13.9,7.9,249,4.5,497,56.5,5.12,18.4,62.0,17.8,28.2,19.2,25.0,55.2,62.8,25.6,Global,Other
213
+ Protein Bar,Per 100g,234,9.8,9.3,11.8,214,1.1,158,55.2,9.99,11.7,19.6,11.9,42.1,16.5,6.1,17.6,61.3,50.0,Global,Other
214
+ Cola,Per 100g,97,7.2,4.5,6.1,104,2.5,765,70.6,7.87,4.9,14.4,5.8,21.8,8.0,13.9,85.0,78.4,39.4,Global,Beverage
215
+ Diet Cola,Per 100g,264,29.2,29.2,9.6,159,7.0,547,95.5,6.65,13.2,58.4,37.4,34.3,12.2,38.9,60.8,106.1,33.2,Global,Beverage
216
+ Orange Juice,Per 100g,286,2.4,24.6,1.6,143,5.9,187,56.3,6.52,14.3,4.8,31.5,5.7,11.0,32.8,20.8,62.6,32.6,Global,Beverage
217
+ Apple Juice,Per 100g,205,7.2,19.8,6.8,262,6.5,467,49.7,2.16,10.2,14.4,25.4,24.3,20.2,36.1,51.9,55.2,10.8,Global,Beverage
218
+ Smoothie,Per 100g,452,22.1,35.4,1.8,297,7.8,562,70.4,5.71,22.6,44.2,45.4,6.4,22.8,43.3,62.4,78.2,28.5,Global,Beverage
219
+ Milkshake,Per 100g,149,21.4,8.9,11.9,26,8.2,535,4.6,3.63,7.4,42.8,11.4,42.5,2.0,45.6,59.4,5.1,18.1,Global,Dairy
220
+ Coffee Latte,Per 100g,134,8.0,35.5,8.2,123,7.3,253,38.3,0.0,6.7,16.0,45.5,29.3,9.5,40.6,28.1,42.6,0.0,Global,Beverage
221
+ Cappuccino,Per 100g,51,5.4,20.9,13.8,283,3.3,419,18.8,3.42,2.5,10.8,26.8,49.3,21.8,18.3,46.6,20.9,17.1,Global,Other
222
+ Green Tea,Per 100g,462,24.8,35.3,14.9,193,8.7,767,85.4,2.73,23.1,49.6,45.3,53.2,14.8,48.3,85.2,94.9,13.7,Global,Beverage
223
+ Iced Tea,Per 100g,481,34.7,26.3,1.7,43,6.9,408,65.1,0.25,24.1,69.4,33.7,6.1,3.3,38.3,45.3,72.3,1.2,Global,Beverage
224
+ Energy Drink,Per 100g,175,27.2,9.8,6.2,244,1.7,362,81.5,1.78,8.8,54.4,12.6,22.1,18.8,9.4,40.2,90.6,8.9,Global,Beverage
225
+ Sports Drink,Per 100g,248,31.1,5.9,10.2,28,0.8,252,84.2,1.02,12.4,62.2,7.6,36.4,2.2,4.4,28.0,93.6,5.1,Global,Beverage
226
+ Almond Milk,Per 100g,112,13.0,15.0,4.5,271,2.1,427,61.5,7.36,5.6,26.0,19.2,16.1,20.8,11.7,47.4,68.3,36.8,Global,Dairy
227
+ Soy Milk,Per 100g,231,8.7,33.7,6.0,205,0.2,11,47.7,1.92,11.6,17.4,43.2,21.4,15.8,1.1,1.2,53.0,9.6,Global,Dairy
228
+ Oat Milk,Per 100g,358,15.9,23.0,10.9,276,4.9,665,35.4,2.15,17.9,31.8,29.5,38.9,21.2,27.2,73.9,39.3,10.8,Global,Dairy
229
+ Butter,Per 100g,195,32.2,26.7,1.5,219,7.2,457,83.9,3.01,9.8,64.4,34.2,5.4,16.8,40.0,50.8,93.2,15.0,Global,Dairy
230
+ Ghee,Per 100g,224,32.0,27.8,1.9,224,1.3,560,79.9,7.77,11.2,64.0,35.6,6.8,17.2,7.2,62.2,88.8,38.8,Global,Dairy
231
+ Olive Oil,Per 100g,557,15.1,13.3,10.4,25,9.1,736,60.9,3.14,27.9,30.2,17.1,37.1,1.9,50.6,81.8,67.7,15.7,Global,Ingredient
232
+ Coconut Oil,Per 100g,392,3.0,37.2,10.5,123,4.5,329,29.4,2.85,19.6,6.0,47.7,37.5,9.5,25.0,36.6,32.7,14.3,Global,Ingredient
233
+ Mayonnaise,Per 100g,134,4.1,11.1,9.8,28,6.5,181,83.1,1.34,6.7,8.2,14.2,35.0,2.2,36.1,20.1,92.3,6.7,Global,Ingredient
234
+ Ketchup,Per 100g,224,17.7,21.7,11.9,37,9.1,865,1.5,3.14,11.2,35.4,27.8,42.5,2.8,50.6,96.1,1.7,15.7,Global,Ingredient
235
+ Mustard,Per 100g,20,32.9,39.3,11.2,252,7.9,185,57.6,8.3,1.0,65.8,50.4,40.0,19.4,43.9,20.6,64.0,41.5,Global,Ingredient
236
+ Vinegar,Per 100g,395,10.5,0.9,7.9,134,4.6,364,36.1,7.78,19.8,21.0,1.2,28.2,10.3,25.6,40.4,40.1,38.9,Global,Ingredient
237
+ Cornstarch,Per 100g,574,14.7,15.1,2.9,96,1.9,199,17.9,1.12,28.7,29.4,19.4,10.4,7.4,10.6,22.1,19.9,5.6,Global,Ingredient
238
+ Maltodextrin,Per 100g,500,5.1,11.3,13.0,48,1.6,825,74.7,7.65,25.0,10.2,14.5,46.4,3.7,8.9,91.7,83.0,38.2,Global,Ingredient
239
+ Dextrin,Per 100g,95,26.8,9.0,7.5,163,2.6,449,84.4,5.79,4.8,53.6,11.5,26.8,12.5,14.4,49.9,93.8,28.9,Global,Ingredient
240
+ Honey,Per 100g,36,9.3,8.4,9.3,238,7.5,660,43.2,2.71,1.8,18.6,10.8,33.2,18.3,41.7,73.3,48.0,13.6,Global,Ingredient
241
+ Maple Syrup,Per 100g,567,21.7,14.2,8.8,40,5.9,700,21.6,1.98,28.3,43.4,18.2,31.4,3.1,32.8,77.8,24.0,9.9,Global,Ingredient
242
+ Caesar Salad,Per 100g,508,1.4,31.4,6.6,74,9.8,809,45.6,7.04,25.4,2.8,40.3,23.6,5.7,54.4,89.9,50.7,35.2,Western / European,Other
243
+ Greek Salad,Per 100g,186,2.1,11.3,7.5,289,2.6,434,25.8,9.35,9.3,4.2,14.5,26.8,22.2,14.4,48.2,28.7,46.8,Western / European,Other
244
+ Tom Yum Soup,Per 100g,522,2.6,28.6,5.7,68,3.9,383,93.3,8.33,26.1,5.2,36.7,20.4,5.2,21.7,42.6,103.7,41.6,Asian,Other
245
+ Miso Soup,Per 100g,480,28.7,10.2,14.6,62,3.1,164,99.4,7.73,24.0,57.4,13.1,52.1,4.8,17.2,18.2,110.4,38.6,Asian,Other
246
+ Sushi Roll,Per 100g,432,21.6,12.9,8.4,262,6.6,422,46.7,9.09,21.6,43.2,16.5,30.0,20.2,36.7,46.9,51.9,45.5,Asian,Other
247
+ Ramen,Per 100g,399,2.6,22.7,14.1,76,3.3,648,60.0,6.96,20.0,5.2,29.1,50.4,5.8,18.3,72.0,66.7,34.8,Asian,Other
248
+ Pad Thai,Per 100g,230,35.0,35.1,14.6,249,1.2,454,21.6,4.0,11.5,70.0,45.0,52.1,19.2,6.7,50.4,24.0,20.0,Asian,Other
249
+ Kimchi,Per 100g,290,31.1,0.0,4.4,234,0.1,128,28.2,5.67,14.5,62.2,0.0,15.7,18.0,0.6,14.2,31.3,28.3,Asian,Vegetable
250
+ Tacos,Per 100g,144,3.3,36.2,4.1,30,4.1,502,6.6,0.98,7.2,6.6,46.4,14.6,2.3,22.8,55.8,7.3,4.9,Western / European,Other
251
+ Burrito,Per 100g,516,31.5,38.0,13.7,287,7.1,673,50.3,8.49,25.8,63.0,48.7,48.9,22.1,39.4,74.8,55.9,42.4,Western / European,Other
data/Nutrition Ingredient Database- Version 1.csv ADDED
@@ -0,0 +1,144 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ Category,Ingredient,Energy (kcal),Protein (g),Carbs (g),Fat (g),Fiber (g),Calcium (mg),Iron (mg),VitA (µg),VitC (mg),VitD (µg),Standard Reference,Protein (%DV),Total Fat (%DV),Carbohydrates (%DV),Fiber (%DV),Calcium (%DV),Iron (%DV),Vitamin D (%DV),Vitamin C (%DV),Vitamin A (%DV),Fat (%DV),Carbs (%DV),VitD (%DV),VitC (%DV),VitA (%DV)
2
+ Beverages,Black Tea (Brewed),1,0,0.3,0,0,0,0.02,0,0,0,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
3
+ Beverages,Coffee (Brewed Black),1,0.1,0,0,0,2,0.01,0,0,0,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
4
+ Beverages,Green Tea (Brewed),1,0,0,0,0,0,0.02,0,0,0,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
5
+ Beverages,Hibiscus Tea (Brewed),1,0,0,0,0,8,0.1,0,0,0,USDA Ingredient Data,0,0,0,0,1,1,0,0,0,0,0,0,0,0
6
+ Beverages,Lemon Juice (Raw),22,0.4,6.9,0.2,0.3,6,0.1,1,38.7,0,USDA Ingredient Data,1,0,0,1,0,1,0,0,0,0,3,0,43,0
7
+ Beverages,Matcha (Powder),324,30,38,6,38,420,17,2900,60,0,USDA Ingredient Data,60,0,0,136,32,94,0,0,0,8,14,0,67,322
8
+ Cheese,Cream Cheese,342,6,4,34,0,98,0.1,308,0,0.5,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
9
+ Cheese,Parmesan,431,38,4.1,29,0,1184,0.8,265,0,0.5,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
10
+ Confectionery,Chocolate (Dark 70%),600,7,46,43,11,56,11,0,0,0,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
11
+ Confectionery,Chocolate (Milk),535,7.5,59,30,3,189,2.4,50,0,0,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
12
+ Confectionery,Chocolate (White),539,6,59,32,0,199,0.2,0,0,0,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
13
+ Dairy,Camel Milk (Powder),50,3,5,3,0,120,0.2,50,0,0,USDA Ingredient Data,6,4,2,0,9,1,0,0,6,0,0,0,0,0
14
+ Dairy,Condensed Milk (Sweetened),321,8,54,8.7,0,284,0.2,207,3,0,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
15
+ Dairy,Cream (Heavy),340,2.1,3,36,0,66,0.1,411,0,0.5,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
16
+ Dairy,Greek Yogurt (Plain),97,9,3.6,5,0,110,0.1,20,0,0,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
17
+ Dairy,Milk (Low Fat 1%),42,3.4,5,1,0,125,0.03,68,0,1.3,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
18
+ Dairy,Milk (Powder),60,3.2,5,3.3,0,120,0.03,46,0,1.3,USDA Ingredient Data,6,4,2,0,9,0,6,0,5,0,0,0,0,0
19
+ Dairy,Milk (Skimmed),34,3.4,5,0.1,0,125,0.03,68,0,1.3,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
20
+ Dairy,Milk (Whole),61,3.2,5,3.3,0,113,0.03,46,0,1.3,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
21
+ Dairy,Yogurt (Low Fat),50,4,6,1.5,0,150,0.1,40,0,0,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
22
+ Dairy,Yogurt (Whole),61,3.5,4.7,3.3,0,121,0.05,27,0,0,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
23
+ Fish & Seafood,Hamour (Cooked),110,23,0,1.5,0,15,0.7,20,0,1.5,USDA Ingredient Data,46,2,0,0,1,4,8,0,2,0,0,0,0,0
24
+ Fish & Seafood,Hamour (Grilled),110,23,0,1.5,0,15,0.7,20,0,1.5,USDA Ingredient Data,46,2,0,0,1,4,8,0,2,0,0,0,0,0
25
+ Fish & Seafood,Mackerel (Grilled),205,19,0,14,0,12,1.6,50,0,13,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
26
+ Fish & Seafood,Salmon (Cooked),208,20,0,13,0,9,0.3,40,0,10.9,USDA Ingredient Data,40,17,0,0,1,2,55,0,4,0,0,0,0,0
27
+ Fish & Seafood,Salmon (Grilled),208,20,0,13,0,9,0.3,40,0,10.9,USDA Ingredient Data,40,17,0,0,1,2,55,0,4,0,0,0,0,0
28
+ Fish & Seafood,Sardines (Cooked),208,25,0,11,0,382,2.9,32,0,4.8,USDA Ingredient Data,50,14,0,0,29,16,24,0,4,0,0,0,0,0
29
+ Fish & Seafood,Sardines (Grilled),208,25,0,11,0,382,2.9,32,0,4.8,USDA Ingredient Data,50,14,0,0,29,16,24,0,4,0,0,0,0,0
30
+ Fish & Seafood,Shrimp (Cooked),99,24,0,0.3,0,70,0.5,54,0,1.1,USDA Ingredient Data,48,0,0,0,5,3,6,0,6,0,0,0,0,0
31
+ Fish & Seafood,Shrimp (Grilled),99,24,0,0.3,0,70,0.5,54,0,1.1,USDA Ingredient Data,48,0,0,0,5,3,6,0,6,0,0,0,0,0
32
+ Fish & Seafood,Tilapia (Cooked),129,26,0,2.7,0,10,0.6,0,0,3,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
33
+ Fish & Seafood,Tuna (Cooked),132,28,0,1,0,10,1.3,0,0,2.5,USDA Ingredient Data,56,1,0,0,1,7,12,0,0,0,0,0,0,0
34
+ Fish & Seafood,Tuna (Grilled),132,28,0,1,0,10,1.3,0,0,2.5,USDA Ingredient Data,56,1,0,0,1,7,12,0,0,0,0,0,0,0
35
+ Fruits,Apple (Dried),52,0.3,14,0.2,2.4,6,0.1,3,4.6,0,USDA Ingredient Data,1,0,5,9,0,1,0,5,0,0,0,0,0,0
36
+ Fruits,Apple Puree,68,0.2,17,0.1,1.2,5,0.1,3,4,0,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
37
+ Fruits,Banana (Dried),89,1.1,23,0.3,2.6,5,0.3,3,8.7,0,USDA Ingredient Data,2,0,8,9,0,2,0,10,0,0,0,0,0,0
38
+ Fruits,Blueberries,57,0.7,14,0.3,2.4,6,0.3,3,9.7,0,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
39
+ Fruits,Dates (Dried),277,2,75,0.2,7,64,0.9,7,0,0,USDA Ingredient Data,4,0,27,25,5,5,0,0,1,0,0,0,0,0
40
+ Fruits,Grapes (Raw),69,0.7,18,0.2,0.9,10,0.4,3,10.8,0,USDA Ingredient Data,1,0,7,3,1,2,0,12,0,0,0,0,0,0
41
+ Fruits,Kiwi (Raw),61,1.1,15,0.5,3,34,0.3,4,92.7,0,USDA Ingredient Data,2,1,5,11,3,2,0,103,0,0,0,0,0,0
42
+ Fruits,Mango (Raw),60,0.8,15,0.4,1.6,11,0.2,54,36.4,0,USDA Ingredient Data,2,1,5,6,1,1,0,40,6,0,0,0,0,0
43
+ Fruits,Mango Puree,60,0.5,15,0.2,1.6,11,0.2,54,36,0,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
44
+ Fruits,Orange (Dried),47,0.9,12,0.1,2.4,40,0.1,11,53,0,USDA Ingredient Data,2,0,4,9,3,1,0,59,1,0,0,0,0,0
45
+ Fruits,Orange Concentrate,130,2,30,0.2,0.5,70,0.2,20,120,0,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
46
+ Fruits,Peach (Raw),39,0.9,10,0.3,1.5,6,0.3,16,6.6,0,USDA Ingredient Data,2,0,4,5,0,2,0,7,2,0,0,0,0,0
47
+ Fruits,Pear (Raw),57,0.4,15,0.1,3.1,9,0.2,1,4.3,0,USDA Ingredient Data,1,0,5,11,1,1,0,5,0,0,0,0,0,0
48
+ Fruits,Pineapple (Raw),50,0.5,13,0.1,1.4,13,0.3,3,47.8,0,USDA Ingredient Data,1,0,5,5,1,2,0,53,0,0,0,0,0,0
49
+ Fruits,Pomegranate (Dried),83,1.7,19,1.2,4,10,0.3,0,10,0,USDA Ingredient Data,3,2,7,14,1,2,0,11,0,0,0,0,0,0
50
+ Fruits,Pomegranate Concentrate,150,1,35,0.3,0.5,15,0.4,0,5,0,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
51
+ Fruits,Strawberries,32,0.7,7.7,0.3,2,16,0.4,1,59,0,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
52
+ Fruits,Watermelon (Raw),30,0.6,7.6,0.2,0.4,7,0.2,28,8.1,0,USDA Ingredient Data,1,0,3,1,1,1,0,9,3,0,0,0,0,0
53
+ Grains & Cereals,Arrowroot (Powder),357,0.3,88,0.1,3.4,40,0.3,0,0,0,USDA Ingredient Data,1,0,0,12,3,2,0,0,0,0,32,0,0,0
54
+ Grains & Cereals,Barley,354,12,73,2.3,17,33,3.6,0,0,0,USDA Ingredient Data,24,3,27,61,3,20,0,0,0,0,0,0,0,0
55
+ Grains & Cereals,Barley (Boiled),354,12,73,2.3,17,33,3.6,0,0,0,USDA Ingredient Data,24,3,27,61,3,20,0,0,0,0,0,0,0,0
56
+ Grains & Cereals,Barley (Cooked),354,12,73,2.3,17,33,3.6,0,0,0,USDA Ingredient Data,24,3,27,61,3,20,0,0,0,0,0,0,0,0
57
+ Grains & Cereals,Basmati Rice,365,7.5,80,0.6,1.3,28,1.5,0,0,0,USDA Ingredient Data,15,1,29,5,2,8,0,0,0,0,0,0,0,0
58
+ Grains & Cereals,Basmati Rice (Boiled),365,7.5,80,0.6,1.3,28,1.5,0,0,0,USDA Ingredient Data,15,1,29,5,2,8,0,0,0,0,0,0,0,0
59
+ Grains & Cereals,Basmati Rice (Cooked),365,7.5,80,0.6,1.3,28,1.5,0,0,0,USDA Ingredient Data,15,1,29,5,2,8,0,0,0,0,0,0,0,0
60
+ Grains & Cereals,Brown Rice (Cooked),123,2.7,25.6,1,1.8,10,0.4,0,0,0,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
61
+ Grains & Cereals,Bulgur,342,12,76,1.3,18,35,2.5,0,0,0,USDA Ingredient Data,24,2,28,64,3,14,0,0,0,0,0,0,0,0
62
+ Grains & Cereals,Bulgur (Boiled),342,12,76,1.3,18,35,2.5,0,0,0,USDA Ingredient Data,24,2,28,64,3,14,0,0,0,0,0,0,0,0
63
+ Grains & Cereals,Bulgur (Cooked),342,12,76,1.3,18,35,2.5,0,0,0,USDA Ingredient Data,24,2,28,64,3,14,0,0,0,0,0,0,0,0
64
+ Grains & Cereals,Corn (Boiled),96,3.4,21,1.5,2.4,2,0.5,9,6.8,0,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
65
+ Grains & Cereals,Oats,389,17,66,7,10,54,4.7,0,0,0,USDA Ingredient Data,34,9,24,36,4,26,0,0,0,0,0,0,0,0
66
+ Grains & Cereals,Oats (Boiled),389,17,66,7,10,54,4.7,0,0,0,USDA Ingredient Data,34,9,24,36,4,26,0,0,0,0,0,0,0,0
67
+ Grains & Cereals,Oats (Cooked),389,17,66,7,10,54,4.7,0,0,0,USDA Ingredient Data,34,9,24,36,4,26,0,0,0,0,0,0,0,0
68
+ Grains & Cereals,Quinoa (Cooked),120,4.4,21.3,1.9,2.8,17,1.5,0,0,0,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
69
+ Grains & Cereals,Tapioca (Dry),358,0.2,88,0.02,0.9,20,1.6,0,0,0,USDA Ingredient Data,0,0,0,3,2,9,0,0,0,0,32,0,0,0
70
+ Grains & Cereals,Whole Wheat,340,13,72,2.5,10,34,3.5,0,0,0,USDA Ingredient Data,26,3,26,36,3,19,0,0,0,0,0,0,0,0
71
+ Grains & Cereals,Whole Wheat (Boiled),340,13,72,2.5,10,34,3.5,0,0,0,USDA Ingredient Data,26,3,26,36,3,19,0,0,0,0,0,0,0,0
72
+ Grains & Cereals,Whole Wheat (Cooked),340,13,72,2.5,10,34,3.5,0,0,0,USDA Ingredient Data,26,3,26,36,3,19,0,0,0,0,0,0,0,0
73
+ Ingredients,Baking Powder,53,0,28,0,0,5876,0.3,0,0,0,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
74
+ Ingredients,Cornstarch,381,0.3,91,0.1,0.9,2,0.5,0,0,0,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
75
+ Ingredients,Dextrin,350,0,87,0,0,0,0,0,0,0,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
76
+ Ingredients,Gelatin (Powder),335,85,0,0,0,30,2,0,0,0,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
77
+ Ingredients,Guar Gum,30,5,77,0.5,77,430,5,0,0,0,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
78
+ Ingredients,Maltodextrin,380,0,95,0,0,0,0,0,0,0,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
79
+ Ingredients,Vinegar (White),21,0,0.9,0,0,7,0.2,0,0,0,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
80
+ Ingredients,Xanthan Gum,333,7,77,0.5,77,0,0,0,0,0,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
81
+ Legumes & Pulses,Black Beans (Boiled),339,21,63,0.9,16,27,5.1,0,0,0,USDA Ingredient Data,42,1,23,57,2,28,0,0,0,0,0,0,0,0
82
+ Legumes & Pulses,Black Beans (Cooked),339,21,63,0.9,16,27,5.1,0,0,0,USDA Ingredient Data,42,1,23,57,2,28,0,0,0,0,0,0,0,0
83
+ Legumes & Pulses,Chickpeas (Boiled),364,19,61,6,17,105,6.2,67,4,0,USDA Ingredient Data,38,8,22,61,8,34,0,4,7,0,0,0,0,0
84
+ Legumes & Pulses,Chickpeas (Cooked),364,19,61,6,17,105,6.2,67,4,0,USDA Ingredient Data,38,8,22,61,8,34,0,4,7,0,0,0,0,0
85
+ Legumes & Pulses,Fava Beans (Boiled),341,26,58,1.5,25,103,6.7,0,1,0,USDA Ingredient Data,52,2,21,89,8,37,0,1,0,0,0,0,0,0
86
+ Legumes & Pulses,Fava Beans (Cooked),341,26,58,1.5,25,103,6.7,0,1,0,USDA Ingredient Data,52,2,21,89,8,37,0,1,0,0,0,0,0,0
87
+ Legumes & Pulses,Green Peas (Boiled),84,5.4,15,0.4,5.5,25,1.5,38,40,0,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
88
+ Legumes & Pulses,Hummus,166,7.9,14.3,9.6,6,49,2.4,0,0,0,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
89
+ Legumes & Pulses,Kidney Beans (Boiled),333,24,60,1,25,83,8.2,0,0,0,USDA Ingredient Data,48,1,22,89,6,46,0,0,0,0,0,0,0,0
90
+ Legumes & Pulses,Kidney Beans (Cooked),333,24,60,1,25,83,8.2,0,0,0,USDA Ingredient Data,48,1,22,89,6,46,0,0,0,0,0,0,0,0
91
+ Legumes & Pulses,Lentils (Boiled),353,25,60,1.1,11,35,6.5,8,4,0,USDA Ingredient Data,50,1,22,39,3,36,0,4,1,0,0,0,0,0
92
+ Legumes & Pulses,Lentils (Cooked),353,25,60,1.1,11,35,6.5,8,4,0,USDA Ingredient Data,50,1,22,39,3,36,0,4,1,0,0,0,0,0
93
+ Meat & Poultry,Beef,250,26,0,15,0,18,2.6,0,0,0.2,USDA Ingredient Data,52,19,0,0,1,14,1,0,0,0,0,0,0,0
94
+ Meat & Poultry,Beef (Cooked),250,26,0,15,0,18,2.6,0,0,0.2,USDA Ingredient Data,52,19,0,0,1,14,1,0,0,0,0,0,0,0
95
+ Meat & Poultry,Beef (Grilled),250,26,0,15,0,18,2.6,0,0,0.2,USDA Ingredient Data,52,19,0,0,1,14,1,0,0,0,0,0,0,0
96
+ Meat & Poultry,Beef (Roasted),250,26,0,15,0,18,2.6,0,0,0.2,USDA Ingredient Data,52,19,0,0,1,14,1,0,0,0,0,0,0,0
97
+ Meat & Poultry,Beef Mince (15% Fat),250,26,0,17,0,18,2.6,0,0,0.2,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
98
+ Meat & Poultry,Camel Meat,160,23,0,6,0,13,2,0,0,0.1,USDA Ingredient Data,46,8,0,0,1,11,0,0,0,0,0,0,0,0
99
+ Meat & Poultry,Camel Meat (Cooked),160,23,0,6,0,13,2,0,0,0.1,USDA Ingredient Data,46,8,0,0,1,11,0,0,0,0,0,0,0,0
100
+ Meat & Poultry,Camel Meat (Grilled),160,23,0,6,0,13,2,0,0,0.1,USDA Ingredient Data,46,8,0,0,1,11,0,0,0,0,0,0,0,0
101
+ Meat & Poultry,Camel Meat (Roasted),160,23,0,6,0,13,2,0,0,0.1,USDA Ingredient Data,46,8,0,0,1,11,0,0,0,0,0,0,0,0
102
+ Meat & Poultry,Chicken Breast,165,31,0,3.6,0,15,1,13,0,0.1,USDA Ingredient Data,62,5,0,0,1,6,0,0,1,0,0,0,0,0
103
+ Meat & Poultry,Chicken Breast (Cooked),165,31,0,3.6,0,15,1,13,0,0.1,USDA Ingredient Data,62,5,0,0,1,6,0,0,1,0,0,0,0,0
104
+ Meat & Poultry,Chicken Breast (Grilled),165,31,0,3.6,0,15,1,13,0,0.1,USDA Ingredient Data,62,5,0,0,1,6,0,0,1,0,0,0,0,0
105
+ Meat & Poultry,Chicken Breast (Roasted),165,31,0,3.6,0,15,1,13,0,0.1,USDA Ingredient Data,62,5,0,0,1,6,0,0,1,0,0,0,0,0
106
+ Meat & Poultry,Chicken Thigh (Cooked),209,26,0,11,0,12,1.3,16,0,0.1,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
107
+ Meat & Poultry,Lamb,294,25,0,21,0,16,1.8,0,0,0.1,USDA Ingredient Data,50,27,0,0,1,10,0,0,0,0,0,0,0,0
108
+ Meat & Poultry,Lamb (Cooked),294,25,0,21,0,16,1.8,0,0,0.1,USDA Ingredient Data,50,27,0,0,1,10,0,0,0,0,0,0,0,0
109
+ Meat & Poultry,Lamb (Grilled),294,25,0,21,0,16,1.8,0,0,0.1,USDA Ingredient Data,50,27,0,0,1,10,0,0,0,0,0,0,0,0
110
+ Meat & Poultry,Lamb (Roasted),294,25,0,21,0,16,1.8,0,0,0.1,USDA Ingredient Data,50,27,0,0,1,10,0,0,0,0,0,0,0,0
111
+ Meat & Poultry,Turkey,189,29,0,7,0,11,1.4,0,0,0.1,USDA Ingredient Data,58,9,0,0,1,8,0,0,0,0,0,0,0,0
112
+ Meat & Poultry,Turkey (Cooked),189,29,0,7,0,11,1.4,0,0,0.1,USDA Ingredient Data,58,9,0,0,1,8,0,0,0,0,0,0,0,0
113
+ Meat & Poultry,Turkey (Grilled),189,29,0,7,0,11,1.4,0,0,0.1,USDA Ingredient Data,58,9,0,0,1,8,0,0,0,0,0,0,0,0
114
+ Meat & Poultry,Turkey (Roasted),189,29,0,7,0,11,1.4,0,0,0.1,USDA Ingredient Data,58,9,0,0,1,8,0,0,0,0,0,0,0,0
115
+ Nuts & Seeds,Almonds (Roasted),579,21,22,50,12,269,3.7,1,0,0,USDA Ingredient Data,42,64,8,43,21,21,0,0,0,0,0,0,0,0
116
+ Nuts & Seeds,Cashews (Raw),553,18,30,44,3.3,37,6.7,0,0,0,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
117
+ Nuts & Seeds,Chia Seeds,486,17,42,31,34,631,7.7,0,1.6,0,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
118
+ Nuts & Seeds,Pistachios (Roasted),562,20,28,45,10,105,3.9,13,5,0,USDA Ingredient Data,40,58,10,36,8,22,0,6,1,0,0,0,0,0
119
+ Nuts & Seeds,Sesame Seeds (Roasted),573,18,23,50,12,975,14.6,0,0,0,USDA Ingredient Data,36,64,8,43,75,81,0,0,0,0,0,0,0,0
120
+ Nuts & Seeds,Sunflower Seeds (Roasted),584,21,20,51,8.6,78,5.2,0,1,0,USDA Ingredient Data,42,65,7,31,6,29,0,1,0,0,0,0,0,0
121
+ Nuts & Seeds,Walnuts (Roasted),654,15,14,65,7,98,2.9,1,1,0,USDA Ingredient Data,30,83,5,25,8,16,0,1,0,0,0,0,0,0
122
+ Oils & Fats,Canola Oil,884,0,0,100,0,0,0,0,0,0,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
123
+ Oils & Fats,Sunflower Oil,884,0,0,100,0,0,0,0,0,0,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
124
+ Protein Supplements,Pea Protein (Isolate),380,80,5,3,0,100,6,0,0,0,USDA Ingredient Data,160,0,0,0,8,33,0,0,0,4,2,0,0,0
125
+ Protein Supplements,Soy Protein (Isolate),360,88,1,1,0,178,15.7,0,0,0,USDA Ingredient Data,176,0,0,0,14,87,0,0,0,1,0,0,0,0
126
+ Protein Supplements,Whey Protein (Isolate),370,90,3,1,0,600,1,0,0,0,USDA Ingredient Data,180,0,0,0,46,6,0,0,0,1,1,0,0,0
127
+ Spices & Herbs,Black Pepper,251,10,64,3.3,25,443,9.7,0,21,0,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
128
+ Spices & Herbs,Mint (Fresh),44,3.3,8.4,0.7,6.8,199,11.9,212,31.8,0,USDA Ingredient Data,7,0,0,24,15,66,0,0,0,1,3,0,35,24
129
+ Spices & Herbs,Paprika,282,14,54,13,34,229,21,1560,0,0,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
130
+ Vegetables,Broccoli (Boiled),35,2.4,7.2,0.4,3.3,40,0.7,31,64,0,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
131
+ Vegetables,Carrot (Raw),41,0.9,10,0.2,2.8,33,0.3,835,6,0,USDA Ingredient Data,0,0,0,0,0,0,0,0,0,0,0,0,0,0
132
+ Vegetables,Cucumber (Boiled),16,0.7,3.6,0.1,0.5,16,0.3,5,3,0,USDA Ingredient Data,1,0,1,2,1,2,0,3,1,0,0,0,0,0
133
+ Vegetables,Cucumber (Cooked),16,0.7,3.6,0.1,0.5,16,0.3,5,3,0,USDA Ingredient Data,1,0,1,2,1,2,0,3,1,0,0,0,0,0
134
+ Vegetables,Eggplant (Boiled),25,1,6,0.2,3,9,0.2,23,2,0,USDA Ingredient Data,2,0,2,11,1,1,0,2,3,0,0,0,0,0
135
+ Vegetables,Eggplant (Cooked),25,1,6,0.2,3,9,0.2,23,2,0,USDA Ingredient Data,2,0,2,11,1,1,0,2,3,0,0,0,0,0
136
+ Vegetables,Lettuce (Raw),15,1.4,2.9,0.2,1.3,36,0.9,370,9.2,0,USDA Ingredient Data,3,0,0,5,3,5,0,0,0,0,1,0,10,41
137
+ Vegetables,Mushrooms (Raw),22,3.1,3.3,0.3,1,3,0.5,0,2.1,0.2,USDA Ingredient Data,6,0,0,4,0,3,0,0,0,0,1,1,2,0
138
+ Vegetables,Okra (Boiled),33,2,7,0.2,3.2,82,0.6,36,23,0,USDA Ingredient Data,4,0,3,11,6,3,0,26,4,0,0,0,0,0
139
+ Vegetables,Okra (Cooked),33,2,7,0.2,3.2,82,0.6,36,23,0,USDA Ingredient Data,4,0,3,11,6,3,0,26,4,0,0,0,0,0
140
+ Vegetables,Potato (Boiled),87,1.9,20,0.1,1.8,5,0.3,0,13,0,USDA Ingredient Data,4,0,0,6,0,2,0,0,0,0,7,0,14,0
141
+ Vegetables,Spinach (Boiled),23,2.9,3.6,0.4,2.2,99,2.7,469,28,0,USDA Ingredient Data,6,1,1,8,8,15,0,31,52,0,0,0,0,0
142
+ Vegetables,Spinach (Cooked),23,2.9,3.6,0.4,2.2,99,2.7,469,28,0,USDA Ingredient Data,6,1,1,8,8,15,0,31,52,0,0,0,0,0
143
+ Vegetables,Tomato (Boiled),18,0.9,3.9,0.2,1.2,10,0.3,42,14,0,USDA Ingredient Data,2,0,1,4,1,2,0,16,5,0,0,0,0,0
144
+ Vegetables,Tomato (Cooked),18,0.9,3.9,0.2,1.2,10,0.3,42,14,0,USDA Ingredient Data,2,0,1,4,1,2,0,16,5,0,0,0,0,0
models/best_yolo_s.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:6260f2ec71419cd968b3ddbb09ec558b09059e74d6fef149f815f94bf4e5d40f
3
+ size 11282690
models/best_yolo_x.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:793cfb68c23db7f07d33c6e2a74cf64b04768d070405c54396f7dd25229a6626
3
+ size 57263736
requirements.txt ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
 
1
+ fastapi>=0.100.0
2
+ uvicorn>=0.23.0
3
+ python-multipart>=0.0.6
4
+ pandas>=2.0.0
5
+ Pillow>=9.5.0
6
+ --extra-index-url https://download.pytorch.org/whl/cpu
7
+ torch
8
+ torchvision
9
+ ultralytics>=8.0.0
static/css/styles.css ADDED
@@ -0,0 +1,97 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* ==========================================================================
2
+ Custom Stylesheet for eath API
3
+ Tailwind is used for layout, this file handles specific brand assets
4
+ and keyframe animations.
5
+ ========================================================================== */
6
+
7
+ /* --- 1. Brand Variables & Typography --- */
8
+ :root {
9
+ --eath-purple: #8B68A2;
10
+ --eath-purple-dark: #705382;
11
+ --eath-purple-light: #EBE4F0;
12
+ }
13
+
14
+ body {
15
+ font-family: 'Inter', sans-serif;
16
+ }
17
+
18
+ /* --- 2. Tailwind Custom Class Mapping --- */
19
+ /* Allowing Tailwind to use our CSS variables easily via custom classes */
20
+ .text-brand {
21
+ color: var(--eath-purple);
22
+ }
23
+
24
+ .bg-brand {
25
+ background-color: var(--eath-purple);
26
+ }
27
+
28
+ .bg-brand-dark:hover {
29
+ background-color: var(--eath-purple-dark);
30
+ }
31
+
32
+ .bg-brand-light {
33
+ background-color: var(--eath-purple-light);
34
+ }
35
+
36
+ .border-brand {
37
+ border-color: var(--eath-purple);
38
+ }
39
+
40
+ .focus\:border-brand:focus {
41
+ border-color: var(--eath-purple);
42
+ }
43
+
44
+ /* --- 3. UI Interactions --- */
45
+ .drag-active {
46
+ border-color: var(--eath-purple) !important;
47
+ background-color: var(--eath-purple-light) !important;
48
+ }
49
+
50
+ .progress-anim {
51
+ transition: width 1.2s cubic-bezier(0.4, 0, 0.2, 1);
52
+ }
53
+
54
+ /* --- 4. Custom Loader Animation --- */
55
+ /* A professional spinning double ring loader using the brand color */
56
+ .custom-loader {
57
+ width: 60px;
58
+ height: 60px;
59
+ border-radius: 50%;
60
+ border: 4px solid var(--eath-purple-light);
61
+ border-top-color: var(--eath-purple);
62
+ animation: spin 1s linear infinite;
63
+ position: relative;
64
+ }
65
+
66
+ .custom-loader::after {
67
+ content: '';
68
+ position: absolute;
69
+ top: 6px;
70
+ left: 6px;
71
+ right: 6px;
72
+ bottom: 6px;
73
+ border-radius: 50%;
74
+ border: 3px solid transparent;
75
+ border-top-color: #333;
76
+ animation: spin-reverse 2s linear infinite;
77
+ }
78
+
79
+ @keyframes spin {
80
+ 0% {
81
+ transform: rotate(0deg);
82
+ }
83
+
84
+ 100% {
85
+ transform: rotate(360deg);
86
+ }
87
+ }
88
+
89
+ @keyframes spin-reverse {
90
+ 0% {
91
+ transform: rotate(360deg);
92
+ }
93
+
94
+ 100% {
95
+ transform: rotate(0deg);
96
+ }
97
+ }
static/eathstartup.png ADDED
static/index.html ADDED
@@ -0,0 +1,183 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+
4
+ <head>
5
+ <meta charset="UTF-8">
6
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
7
+ <title>eath | AI Nutrition Tracker</title>
8
+
9
+ <script src="https://cdn.tailwindcss.com"></script>
10
+
11
+ <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
12
+
13
+ <link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;600;700;800&display=swap" rel="stylesheet">
14
+
15
+ <link rel="stylesheet" href="css/styles.css">
16
+ </head>
17
+
18
+ <body class="bg-gray-50 min-h-screen flex flex-col font-inter">
19
+
20
+ <header class="bg-[#111116] text-white py-4 shadow-md">
21
+ <div class="max-w-7xl mx-auto px-6 flex justify-between items-center">
22
+ <div class="flex items-center gap-3">
23
+ <img src="eathstartup.png" alt="eath Logo" class="h-10 w-auto object-contain">
24
+ <span class="text-3xl font-bold tracking-tight">eath</span>
25
+ </div>
26
+
27
+ <nav class="hidden md:flex gap-6 text-sm font-medium text-gray-300">
28
+ <a href="#" class="hover:text-white transition">About eath</a>
29
+ <a href="#" class="hover:text-white transition">Features</a>
30
+ <a href="#" class="hover:text-white transition">Team</a>
31
+ <a href="#" class="hover:text-white transition">Contact us</a>
32
+ <a href="#" class="hover:text-white transition">Privacy</a>
33
+ </nav>
34
+
35
+ <div class="flex items-center gap-4">
36
+ <button class="text-gray-400 hover:text-white"><i class="fa-solid fa-moon"></i></button>
37
+ <div
38
+ class="bg-gray-800 px-3 py-1 rounded text-sm flex items-center gap-2 cursor-pointer border border-gray-700">
39
+ <span>🇺🇸</span> <i class="fa-solid fa-chevron-down text-xs"></i>
40
+ </div>
41
+ </div>
42
+ </div>
43
+ </header>
44
+
45
+ <main class="flex-grow max-w-7xl mx-auto px-6 py-10 w-full grid grid-cols-1 lg:grid-cols-12 gap-8">
46
+
47
+ <section class="lg:col-span-5 bg-white p-8 rounded-2xl shadow-sm border border-gray-100 flex flex-col gap-8">
48
+
49
+ <h2 class="text-xl font-bold text-gray-800 border-b pb-3"><i
50
+ class="fa-solid fa-sliders text-brand mr-2"></i> Analysis Engine</h2>
51
+
52
+ <div>
53
+ <label class="block text-sm font-bold text-gray-700 mb-2">Select Architecture</label>
54
+ <select id="modelSelector"
55
+ class="w-full bg-gray-50 border border-gray-200 text-gray-700 rounded-lg p-3 outline-none focus:border-brand transition">
56
+ <option value="yolo_x">YOLO-X Large (>90% Top-1 Accuracy)</option>
57
+ <option value="yolo_s">YOLO-S Small (Edge Optimized)</option>
58
+ </select>
59
+ </div>
60
+
61
+ <div>
62
+ <div class="flex justify-between items-center mb-2">
63
+ <label class="block text-sm font-bold text-gray-700">Portion Size</label>
64
+ <span id="portionLabel"
65
+ class="text-sm font-bold text-brand bg-brand-light px-3 py-1 rounded-full">100 g</span>
66
+ </div>
67
+ <input type="range" id="portionSlider" min="50" max="500" step="50" value="100"
68
+ class="w-full h-2 bg-gray-200 rounded-lg appearance-none cursor-pointer">
69
+ </div>
70
+
71
+ <div id="dropZone"
72
+ class="border-2 border-dashed border-gray-300 rounded-xl p-8 text-center cursor-pointer hover:bg-gray-50 transition relative overflow-hidden group">
73
+ <input type="file" id="fileInput" accept="image/*"
74
+ class="absolute inset-0 w-full h-full opacity-0 cursor-pointer z-10" />
75
+
76
+ <div id="uploadUI" class="flex flex-col items-center pointer-events-none">
77
+ <div
78
+ class="w-16 h-16 bg-brand-light text-brand rounded-full flex items-center justify-center text-2xl mb-4 group-hover:scale-110 transition-transform">
79
+ <i class="fa-solid fa-camera"></i>
80
+ </div>
81
+ <p class="text-gray-800 font-bold">Drop food image here</p>
82
+ <p class="text-gray-400 text-sm mt-1">PNG, JPG up to 5MB</p>
83
+ </div>
84
+
85
+ <img id="imagePreview" src="" alt="Preview"
86
+ class="hidden absolute inset-0 w-full h-full object-cover z-0" />
87
+ </div>
88
+
89
+ <button id="analyzeBtn"
90
+ class="w-full bg-brand hover:bg-brand-dark text-white font-bold py-4 rounded-xl shadow-md transition flex justify-center items-center gap-2">
91
+ <i class="fa-solid fa-microchip"></i> Analyze Dish
92
+ </button>
93
+ </section>
94
+
95
+ <section class="lg:col-span-7 flex flex-col gap-6">
96
+
97
+ <div id="welcomeState"
98
+ class="h-full bg-white rounded-2xl shadow-sm border border-gray-100 flex flex-col items-center justify-center p-12 text-center">
99
+ <div class="w-24 h-24 bg-gray-50 rounded-full flex items-center justify-center mb-6">
100
+ <i class="fa-solid fa-utensils text-4xl text-gray-300"></i>
101
+ </div>
102
+ <h3 class="text-2xl font-bold text-gray-800 mb-2">Ready for Inference</h3>
103
+ <p class="text-gray-500 max-w-sm">Upload an image to trigger the YOLO architecture. The system will
104
+ cross-reference the USDA databases to extract macros and ingredients.</p>
105
+ </div>
106
+
107
+ <div id="loadingState"
108
+ class="hidden h-full bg-white rounded-2xl shadow-sm border border-gray-100 flex flex-col items-center justify-center p-12">
109
+ <div class="custom-loader mb-6"></div>
110
+ <h3 class="text-xl font-bold text-gray-800">Processing Image...</h3>
111
+ <p class="text-gray-500 text-sm">Running tensor operations & fetching database.</p>
112
+ </div>
113
+
114
+ <div id="resultsState" class="hidden flex flex-col gap-6">
115
+
116
+ <div class="bg-white rounded-2xl shadow-sm border border-gray-100 p-6 relative overflow-hidden">
117
+ <div
118
+ class="absolute top-0 right-0 bg-brand text-white text-xs font-bold px-4 py-1 rounded-bl-xl shadow-sm">
119
+ <span id="badgeModel">YOLO</span>
120
+ </div>
121
+ <p class="text-xs text-gray-500 font-bold uppercase tracking-widest mb-1">Detected Object</p>
122
+ <h2 id="resDishName" class="text-4xl font-black text-gray-800 mb-4 tracking-tight">--</h2>
123
+
124
+ <div class="flex justify-between text-sm mb-2">
125
+ <span class="font-bold text-gray-600">Model Confidence</span>
126
+ <span id="resConfText" class="font-bold text-brand">0%</span>
127
+ </div>
128
+ <div class="w-full bg-gray-100 rounded-full h-3">
129
+ <div id="resConfBar" class="bg-brand h-3 rounded-full progress-anim" style="width: 0%"></div>
130
+ </div>
131
+ </div>
132
+
133
+ <div class="grid grid-cols-1 md:grid-cols-2 gap-6">
134
+
135
+ <div class="bg-white rounded-2xl shadow-sm border border-gray-100 p-6">
136
+ <div class="flex justify-between items-center mb-6">
137
+ <h3 class="text-lg font-bold text-gray-800"><i
138
+ class="fa-solid fa-chart-pie text-brand mr-2"></i> Macros</h3>
139
+ <span class="text-xs font-bold bg-gray-100 text-gray-600 px-2 py-1 rounded"><span
140
+ id="resPortion">100</span>g</span>
141
+ </div>
142
+ <div class="grid grid-cols-2 gap-4">
143
+ <div class="border border-gray-100 rounded-xl p-4 text-center bg-gray-50">
144
+ <div id="resKcal" class="text-2xl font-black text-gray-800">--</div>
145
+ <div class="text-xs font-bold text-gray-500">KCAL</div>
146
+ </div>
147
+ <div class="border border-gray-100 rounded-xl p-4 text-center bg-gray-50">
148
+ <div id="resProt" class="text-2xl font-black text-gray-800">--</div>
149
+ <div class="text-xs font-bold text-gray-500">PROT (g)</div>
150
+ </div>
151
+ <div class="border border-gray-100 rounded-xl p-4 text-center bg-gray-50">
152
+ <div id="resFat" class="text-2xl font-black text-gray-800">--</div>
153
+ <div class="text-xs font-bold text-gray-500">FAT (g)</div>
154
+ </div>
155
+ <div class="border border-gray-100 rounded-xl p-4 text-center bg-gray-50">
156
+ <div id="resCarb" class="text-2xl font-black text-gray-800">--</div>
157
+ <div class="text-xs font-bold text-gray-500">CARBS (g)</div>
158
+ </div>
159
+ </div>
160
+ </div>
161
+
162
+ <div class="bg-white rounded-2xl shadow-sm border border-gray-100 p-6 flex flex-col">
163
+ <h3 class="text-lg font-bold text-gray-800 mb-4"><i
164
+ class="fa-solid fa-clipboard-list text-brand mr-2"></i> Likely Ingredients</h3>
165
+ <div
166
+ class="bg-gray-50 rounded-xl border border-gray-100 p-4 flex-grow overflow-y-auto max-h-48">
167
+ <ul id="ingredientsList" class="text-sm text-gray-600 space-y-2 list-disc pl-4">
168
+ </ul>
169
+ <div id="noIngredientsMsg" class="hidden text-sm text-gray-400 italic text-center mt-4">
170
+ No specific ingredient data found for this dish.
171
+ </div>
172
+ </div>
173
+ </div>
174
+
175
+ </div>
176
+ </div>
177
+ </section>
178
+ </main>
179
+
180
+ <script src="js/script.js"></script>
181
+ </body>
182
+
183
+ </html>
static/js/script.js ADDED
@@ -0,0 +1,189 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ * ==============================================================================
3
+ * EATHVISION FRONTEND LOGIC
4
+ * Description: Handles DOM manipulation, file uploads, and async API requests.
5
+ * ==============================================================================
6
+ */
7
+
8
+ document.addEventListener('DOMContentLoaded', () => {
9
+
10
+ // --- DOM Elements ---
11
+ const elements = {
12
+ fileInput: document.getElementById('fileInput'),
13
+ dropZone: document.getElementById('dropZone'),
14
+ imagePreview: document.getElementById('imagePreview'),
15
+ uploadUI: document.getElementById('uploadUI'),
16
+ portionSlider: document.getElementById('portionSlider'),
17
+ portionLabel: document.getElementById('portionLabel'),
18
+ analyzeBtn: document.getElementById('analyzeBtn'),
19
+ modelSelector: document.getElementById('modelSelector'),
20
+
21
+ // State Containers
22
+ states: {
23
+ welcome: document.getElementById('welcomeState'),
24
+ loading: document.getElementById('loadingState'),
25
+ results: document.getElementById('resultsState')
26
+ },
27
+
28
+ // Result Fields
29
+ res: {
30
+ badge: document.getElementById('badgeModel'),
31
+ name: document.getElementById('resDishName'),
32
+ confText: document.getElementById('resConfText'),
33
+ confBar: document.getElementById('resConfBar'),
34
+ portion: document.getElementById('resPortion'),
35
+ kcal: document.getElementById('resKcal'),
36
+ prot: document.getElementById('resProt'),
37
+ fat: document.getElementById('resFat'),
38
+ carb: document.getElementById('resCarb'),
39
+ ingList: document.getElementById('ingredientsList'),
40
+ noIngMsg: document.getElementById('noIngredientsMsg')
41
+ }
42
+ };
43
+
44
+ // --- Event Listeners ---
45
+
46
+ // 1. Update portion slider label dynamically
47
+ elements.portionSlider.addEventListener('input', (e) => {
48
+ elements.portionLabel.innerText = `${e.target.value} g`;
49
+ });
50
+
51
+ // 2. Handle File Selection & Image Preview
52
+ elements.fileInput.addEventListener('change', handleFileSelect);
53
+
54
+ // 3. Drag and Drop Visual Feedback
55
+ elements.dropZone.addEventListener('dragover', (e) => {
56
+ e.preventDefault();
57
+ elements.dropZone.classList.add('drag-active');
58
+ });
59
+
60
+ elements.dropZone.addEventListener('dragleave', () => {
61
+ elements.dropZone.classList.remove('drag-active');
62
+ });
63
+
64
+ elements.dropZone.addEventListener('drop', (e) => {
65
+ e.preventDefault();
66
+ elements.dropZone.classList.remove('drag-active');
67
+ if (e.dataTransfer.files.length > 0) {
68
+ elements.fileInput.files = e.dataTransfer.files;
69
+ handleFileSelect();
70
+ }
71
+ });
72
+
73
+ // 4. API Request Execution
74
+ elements.analyzeBtn.addEventListener('click', executeAnalysis);
75
+
76
+
77
+ // --- Core Functions ---
78
+
79
+ function handleFileSelect() {
80
+ const file = elements.fileInput.files[0];
81
+ if (file) {
82
+ const reader = new FileReader();
83
+ reader.onload = function (e) {
84
+ elements.imagePreview.src = e.target.result;
85
+ elements.imagePreview.classList.remove('hidden');
86
+ elements.uploadUI.classList.add('hidden');
87
+ // Make preview slightly transparent so the drop zone remains visible
88
+ elements.imagePreview.classList.add('opacity-90');
89
+ }
90
+ reader.readAsDataURL(file);
91
+ }
92
+ }
93
+
94
+ async function executeAnalysis() {
95
+ if (elements.fileInput.files.length === 0) {
96
+ alert("⚠️ Please select an image first.");
97
+ return;
98
+ }
99
+
100
+ const file = elements.fileInput.files[0];
101
+ const formData = new FormData();
102
+ formData.append('file', file);
103
+ formData.append('model_type', elements.modelSelector.value);
104
+ formData.append('portion_g', elements.portionSlider.value);
105
+
106
+ // Transition UI to Loading
107
+ toggleState('loading');
108
+ elements.analyzeBtn.disabled = true;
109
+
110
+ try {
111
+ // Call the local FastAPI backend
112
+ const response = await fetch('/api/predict', {
113
+ method: 'POST',
114
+ body: formData
115
+ });
116
+
117
+ const data = await response.json();
118
+
119
+ if (!response.ok) throw new Error(data.detail || "Server Error");
120
+
121
+ // Populate AI Data
122
+ elements.res.badge.innerText = data.ai_prediction.model_used.toUpperCase();
123
+ elements.res.name.innerText = data.ai_prediction.dish_name;
124
+ elements.res.confText.innerText = `${data.ai_prediction.confidence}%`;
125
+
126
+ // Delay width application for smooth CSS transition
127
+ setTimeout(() => {
128
+ elements.res.confBar.style.width = `${data.ai_prediction.confidence}%`;
129
+ }, 100);
130
+
131
+ // Populate Nutrition Data
132
+ elements.res.portion.innerText = data.nutrition_insights.portion_g;
133
+ if (data.nutrition_insights.status === "success") {
134
+ const b = data.nutrition_insights.base_data;
135
+ elements.res.kcal.innerText = b.energy_kcal;
136
+ elements.res.prot.innerText = b.protein_g;
137
+ elements.res.fat.innerText = b.fat_g;
138
+ elements.res.carb.innerText = b.carbs_g;
139
+ } else {
140
+ elements.res.kcal.innerText = "--";
141
+ elements.res.prot.innerText = "--";
142
+ elements.res.fat.innerText = "--";
143
+ elements.res.carb.innerText = "--";
144
+ }
145
+
146
+ // Populate Ingredients Data
147
+ elements.res.ingList.innerHTML = ''; // Clear previous
148
+ if (data.ingredients && data.ingredients.length > 0) {
149
+ elements.res.noIngMsg.classList.add('hidden');
150
+ data.ingredients.forEach(ing => {
151
+ const li = document.createElement('li');
152
+ li.innerText = ing;
153
+ // Capitalize first letter
154
+ li.style.textTransform = "capitalize";
155
+ elements.res.ingList.appendChild(li);
156
+ });
157
+ } else {
158
+ elements.res.noIngMsg.classList.remove('hidden');
159
+ }
160
+
161
+ // Show Results
162
+ toggleState('results');
163
+
164
+ } catch (error) {
165
+ console.error("API Error:", error);
166
+ alert("❌ Analysis failed: " + error.message);
167
+ toggleState('welcome');
168
+ } finally {
169
+ elements.analyzeBtn.disabled = false;
170
+ }
171
+ }
172
+
173
+ /**
174
+ * Helper to toggle main view states
175
+ * @param {string} targetState - 'welcome', 'loading', or 'results'
176
+ */
177
+ function toggleState(targetState) {
178
+ elements.states.welcome.classList.add('hidden');
179
+ elements.states.loading.classList.add('hidden');
180
+ elements.states.results.classList.add('hidden');
181
+
182
+ elements.states[targetState].classList.remove('hidden');
183
+
184
+ // Reset progress bar if not in results view
185
+ if (targetState !== 'results') {
186
+ elements.res.confBar.style.width = '0%';
187
+ }
188
+ }
189
+ });