diff --git a/src/main/java/no/ntnu/idatt1002/demo/controller/RecipeController.java b/src/main/java/no/ntnu/idatt1002/demo/controller/RecipeController.java
index 2b655cd74b9373c8c8dc20f0bf8e628233ef9ee6..0f753129b7c0c95aaba37d32ee9c498842e0b3ed 100644
--- a/src/main/java/no/ntnu/idatt1002/demo/controller/RecipeController.java
+++ b/src/main/java/no/ntnu/idatt1002/demo/controller/RecipeController.java
@@ -1,4 +1,105 @@
 package no.ntnu.idatt1002.demo.controller;
 
-public class RecipeController {
+import javafx.fxml.FXML;
+import javafx.fxml.FXMLLoader;
+import javafx.fxml.Initializable;
+import javafx.geometry.Insets;
+import javafx.scene.layout.AnchorPane;
+import javafx.scene.layout.GridPane;
+import no.ntnu.idatt1002.demo.data.recipes.*;
+
+import java.io.IOException;
+import java.net.URL;
+import java.util.ArrayList;
+import java.util.Comparator;
+import java.util.List;
+import java.util.ResourceBundle;
+
+public class RecipeController implements Initializable {
+
+
+    @FXML
+    private GridPane recipeTiles;
+
+
+    private List<Recipe> recipes;
+
+    // For testing purposes at frontend:
+
+    private List<Recipe> getSuggestions() {
+
+        RecipeRegister recipeRegister = new RecipeRegister();
+        List<Recipe> suggestedRecipes = null;
+
+        IngredientsAtHand ingredientsAtHand = new IngredientsAtHand();
+        ingredientsAtHand.addIngredient(new Ingredient(FoodItem.LEMON, 6, MeasuringUnit.PC));
+        ingredientsAtHand.addIngredient(new Ingredient(FoodItem.MINCED_MEAT, 400, MeasuringUnit.GR));
+        ingredientsAtHand.addIngredient(new Ingredient(FoodItem.POTATO, 4, MeasuringUnit.PC));
+        ingredientsAtHand.addIngredient(new Ingredient(FoodItem.MILK, 8, MeasuringUnit.DL));
+
+
+
+        Recipe recipe1 = new Recipe("Recipe no. 1", "Description");
+        recipe1.addIngredient(FoodItem.LEMON, 5, MeasuringUnit.PC);
+        recipe1.addIngredient(FoodItem.POTATO, 5, MeasuringUnit.PC);
+
+        Recipe recipe2 = new Recipe("Recipe no. 2", "Description" );
+        recipe2.addIngredient(FoodItem.POTATO, 5, MeasuringUnit.PC);
+        recipe2.addIngredient(FoodItem.TOMATO, 6, MeasuringUnit.PC);
+        recipe2.addIngredient(FoodItem.ORANGE, 1, MeasuringUnit.PC);
+
+        recipeRegister.addRecipe(recipe1);
+        recipeRegister.addRecipe(recipe2);
+
+        recipeRegister.getRecipes().forEach((recipe) -> recipe.updateIngredientStatus(ingredientsAtHand));
+
+        recipeRegister.getRecipes().sort(Comparator.comparing(Recipe::getMissingIngredients));
+
+        List<Recipe> sortedRecipes = recipeRegister.getRecipes();
+
+        for(int i =0; i<4; i++) {
+            if(sortedRecipes.get(i) != null) {
+                suggestedRecipes.add(sortedRecipes.get(i));
+            } else {
+                suggestedRecipes.add(null);
+            }
+
+        }
+
+        return suggestedRecipes;
+
+    }
+
+
+    @Override
+    public void initialize(URL url, ResourceBundle resourceBundle) {
+        recipes.addAll(getSuggestions());
+
+        int column = 0;
+        int row = 0;
+
+        try {
+        for(int i = 0; i<4; i++) {
+            FXMLLoader fxmlLoader = new FXMLLoader();
+            fxmlLoader.setLocation(getClass().getResource("/src/main/resources/view/RecipeTile.fxml"));
+
+            AnchorPane anchorPane = fxmlLoader.load();
+
+            RecipeTileController recipeTileController = fxmlLoader.getController();
+
+            recipeTileController.setData(recipes.get(i));
+
+            if(column == 3){
+                column = 0;
+                row++;
+            }
+            recipeTiles.add(anchorPane, column++, row);
+            GridPane.setMargin(anchorPane, new Insets(10));
+        }
+
+        } catch (IOException e) {
+                e.printStackTrace();
+        }
+
+    }
 }
diff --git a/src/main/java/no/ntnu/idatt1002/demo/controller/RecipeTileController.java b/src/main/java/no/ntnu/idatt1002/demo/controller/RecipeTileController.java
index 3c29d62c7f46123c731c3b8dafbd138cba1a5e64..cb23f567a3f89b8e4f6e9555bc4b1dfe472f76e0 100644
--- a/src/main/java/no/ntnu/idatt1002/demo/controller/RecipeTileController.java
+++ b/src/main/java/no/ntnu/idatt1002/demo/controller/RecipeTileController.java
@@ -1,4 +1,24 @@
 package no.ntnu.idatt1002.demo.controller;
 
+import javafx.fxml.FXML;
+import javafx.scene.control.Label;
+import no.ntnu.idatt1002.demo.data.recipes.Recipe;
+
 public class RecipeTileController {
+
+    @FXML
+    private Label nameTag;
+
+    @FXML
+    private Label missingTag;
+
+    private Recipe recipe;
+
+    public void setData(Recipe recipe) {
+
+        this.recipe = recipe;
+        nameTag.setText(recipe.getName());
+        missingTag.setText(Integer.toString(recipe.getMissingIngredients()));
+
+    }
 }
diff --git a/src/main/java/no/ntnu/idatt1002/demo/data/recipes/Recipe.java b/src/main/java/no/ntnu/idatt1002/demo/data/recipes/Recipe.java
index def23387705c3cd4915c7bcdf61b6c29f9a96c11..edfd62401f0189aea59f8885a6232e94950b302a 100644
--- a/src/main/java/no/ntnu/idatt1002/demo/data/recipes/Recipe.java
+++ b/src/main/java/no/ntnu/idatt1002/demo/data/recipes/Recipe.java
@@ -101,6 +101,7 @@ public class Recipe {
                    if(inRecipe.getFoodType() == atHand.getFoodType()) {
                        inRecipe.setAtHand(true);
                    } else {
+                       inRecipe.setAtHand(false);
                         missingIngredients += 1;
                    }
                });
@@ -108,6 +109,9 @@ public class Recipe {
        }
     }
 
+    public int getMissingIngredients() {
+        return missingIngredients;
+    }
 
 
     @Override