| 
 | 1 | +const API_KEY = "275d58779ccf4e22af03e792e8819fff";  | 
 | 2 | + | 
 | 3 | +// Call the API and retrieve a list of recipes  | 
 | 4 | +const recipeList = document.getElementById("recipe-list");  | 
 | 5 | + | 
 | 6 | +async function getRecipes() {  | 
 | 7 | +  const response = await fetch(  | 
 | 8 | +    `https://api.spoonacular.com/recipes/random?number=10&apiKey=${API_KEY}`  | 
 | 9 | +  );  | 
 | 10 | +  const data = await response.json();  | 
 | 11 | +  return data.recipes;  | 
 | 12 | +}  | 
 | 13 | + | 
 | 14 | +function displayRecipes(recipes) {  | 
 | 15 | +  recipeList.innerHTML = "";  | 
 | 16 | +  recipes.forEach((recipe) => {  | 
 | 17 | +    const recipeItem = document.createElement("li");  | 
 | 18 | +    recipeItem.classList.add("recipe-item");  | 
 | 19 | +    const recipeImage = document.createElement("img");  | 
 | 20 | +    recipeImage.src = recipe.image;  | 
 | 21 | + | 
 | 22 | +    const recipeTitle = document.createElement("h2");  | 
 | 23 | +    recipeTitle.innerText = recipe.title;  | 
 | 24 | + | 
 | 25 | +    const recipeIngredients = document.createElement("p");  | 
 | 26 | +    recipeIngredients.innerHTML = `<strong>Ingredients:</strong> ${recipe.extendedIngredients  | 
 | 27 | +      .map((ingredient) => ingredient.original)  | 
 | 28 | +      .join(", ")}`;  | 
 | 29 | + | 
 | 30 | +    const recipeLink = document.createElement("a");  | 
 | 31 | +    recipeLink.href = recipe.sourceUrl;  | 
 | 32 | +    recipeLink.innerText = "View Recipe";  | 
 | 33 | + | 
 | 34 | +    recipeItem.appendChild(recipeImage);  | 
 | 35 | +    recipeItem.appendChild(recipeTitle);  | 
 | 36 | +    recipeItem.appendChild(recipeIngredients);  | 
 | 37 | +    recipeItem.appendChild(recipeLink);  | 
 | 38 | + | 
 | 39 | +    recipeList.appendChild(recipeItem);  | 
 | 40 | +  });  | 
 | 41 | +}  | 
 | 42 | + | 
 | 43 | +async function init() {  | 
 | 44 | +  const recipes = await getRecipes();  | 
 | 45 | +  displayRecipes(recipes);  | 
 | 46 | +}  | 
 | 47 | + | 
 | 48 | +init();  | 
0 commit comments