menu / app.py
Subbu1304's picture
Update app.py
99a998d verified
import gradio as gr
# Food item data
food_data = [
{
"name": "Apple",
"image": "apple.jpg",
"nutrition": {
"Calories": "52 kcal",
"Proteins": "0.3 g",
"Carbohydrates": "14 g"
}
},
{
"name": "Banana",
"image": "banana.jpg",
"nutrition": {
"Calories": "96 kcal",
"Proteins": "1.3 g",
"Carbohydrates": "27 g"
}
},
{
"name": "Chicken Breast",
"image": "chicken_breast.jpg",
"nutrition": {
"Calories": "165 kcal",
"Proteins": "31 g",
"Carbohydrates": "0 g"
}
},
{
"name": "Rice",
"image": "rice.jpg",
"nutrition": {
"Calories": "130 kcal",
"Proteins": "2.7 g",
"Carbohydrates": "28 g"
}
}
]
# Function to show food details
def food_details(food_name):
# Find the food item by name
food_item = next((food for food in food_data if food["name"] == food_name), None)
if food_item:
# Format nutrition details
nutrition_details = "\n".join(f"{key}: {value}" for key, value in food_item["nutrition"].items())
return f"### {food_item['name']}\n\n**Nutrition Details:**\n\n{nutrition_details}"
return "Food item not found."
# Gradio Interface
with gr.Blocks() as demo:
gr.Markdown("# Food Nutrition App")
# Food items gallery
with gr.Row():
for food in food_data:
with gr.Column():
gr.Markdown(f"### {food['name']}")
food_button = gr.Button(image=food["image"])
food_button.click(
food_details,
inputs=gr.Textbox(value=food["name"], visible=False),
outputs=gr.Markdown()
)
demo.launch()