Kaludi commited on
Commit
44caf46
·
1 Parent(s): d7d64b2

Upload Meal_Planner.py

Browse files
Files changed (1) hide show
  1. pages/Meal_Planner.py +37 -0
pages/Meal_Planner.py ADDED
@@ -0,0 +1,37 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import requests
2
+ import streamlit as st
3
+
4
+ @st.cache
5
+ def generate_meal_plan(time_frame, target_calories, diet, exclude):
6
+ API_KEY = '14ad5613468b4bae8ff6175ecc697660'
7
+ url = f"https://api.spoonacular.com/mealplanner/generate?timeFrame={time_frame}&targetCalories={target_calories}&diet={diet}&exclude={exclude}&apiKey={API_KEY}"
8
+ response = requests.get(url)
9
+ return response.json()
10
+
11
+ def display_recipe(recipe):
12
+ st.write("Title: ", recipe["title"])
13
+ st.write("Ready in minutes: ", recipe["readyInMinutes"])
14
+ st.write("Servings: ", recipe["servings"])
15
+ image_url = f"https://spoonacular.com/recipeImages/{recipe['id']}-312x231.{recipe['imageType']}"
16
+ st.image(image_url, width=312)
17
+ st.write("Source: ", recipe["sourceUrl"])
18
+
19
+ def main():
20
+ st.title("Meal Plan Generator")
21
+ time_frame = st.selectbox("Select time frame", ["day", "week"])
22
+ target_calories = st.number_input("Enter target calories per day", value=2000)
23
+ diet = st.selectbox("Select diet", ["", "Gluten Free", "Ketogenic", "Vegetarian", "Lacto-Vegetarian", "Ovo-Vegetarian", "Vegan", "Pescetarian", "Paleo", "Primal", "Low FODMAP", "Whole30"])
24
+ exclude = st.text_input("Enter ingredients to exclude (comma separated)")
25
+ meal_plan = generate_meal_plan(time_frame, target_calories, diet, exclude)
26
+ st.write("Meal Plan:")
27
+ for meal in meal_plan["meals"]:
28
+ display_recipe(meal)
29
+ st.write("")
30
+ st.write("Total Nutrients:")
31
+ st.write("Calories: ", meal_plan["nutrients"]["calories"])
32
+ st.write("Protein: ", meal_plan["nutrients"]["protein"])
33
+ st.write("Fat: ", meal_plan["nutrients"]["fat"])
34
+ st.write("Carbohydrates: ", meal_plan["nutrients"]["carbohydrates"])
35
+
36
+ if __name__ == "__main__":
37
+ main()