Press the tofu either using a tofu press or by placing the tofu onto a plate, put another plate on top of it, and then stack something heavy on top of that, like a heavy pot or stack of books. Then leave it to press for 30 minutes. This makes the tofu as firm as possible.
When the tofu is pressed roughly chop it and place it into a mixing bowl.
Preheat the oven to 400°F (200°C).
Prepare the vegan yogurt sauce. Add the raw cashews, water, lemon juice, apple cider vinegar and garam masala into a blender jug and blend until smooth.
Pour this out over the tofu in the mixing bowl and gently toss the tofu pieces in the sauce so that the tofu is evenly spread with the sauce.
Transfer the tofu carefully to a parchment lined baking tray and spread it out evenly.
Bake in the oven for 15 minutes until lightly browned. Remove from the oven and set aside.
Prepare your sauce. While the tofu is baking you can begin your sauce. Add vegan butter to a pot on medium heat and melt the butter. Add chopped onions and sauté until softened.
Now add crushed garlic, grated ginger, garam masala, turmeric, cumin and cayenne pepper and sauté with the onions.
Add crushed tomatoes and coconut cream and stir well. Bring to a gentle simmer and let it simmer for a few minutes. Reduce the heat and stir in the coconut sugar (for flavor balance). Add salt to taste.
Finally, add the baked tofu pieces and fold them into the sauce.
Serve with basmati rice, fresh chopped cilantro and lemon slices.