Marinate the tofu. Cut the tofu block into cubes and prepare the marinade. Mix in a small bowl soy sauce, cinnamon, turmeric, cumin, coriander powder and sugar. Add the marinade onto the tofu, mix with your hands or a spoon and leave marinating while you prepare the rest of the ingredients.
Heat some oil in a pan and add the garlic, onion, red chillies, ginger and carrot. Stir fry for a couple of minutes until the onion has softened and all the ingredients are cooked and transfer into a big blender jug.
Add the vegetable stock, crushed peanuts or peanut butter, sugar and soy sauce. Blend all the ingredients using a hand blender until you have a smooth sauce.
Using the same pan or pot used before, add some more oil if needed, heat the oil and add the tofu and chopped vegetables of your choice.
Cook for a couple of minutes until the vegetables start to golden. Pour the peanut sauce and coconut milk. Bring to simmer and leave simmering for about 15 minutes. Adjust with salt to taste and your curry will be ready to enjoy.
Garnish with fresh cilantro, chilli flakes or crushed peanuts.