Add olive oil, onion, garlic and ginger to a pan over medium heat and sauté for about 3-5 minutes. Move pan contents to the side and add cubed tofu. Let tofu cook about 4-5 minutes, then flip and cook 4-5 minutes on the other sides.
Add all the spices in and stir well, then add the tomato paste and diced canned tomatoes.
Next add in the spinach, combine, cover and let simmer for about 12-15 minutes, until thickened.
Add in the milk, stir well and let simmer for another 2 minutes. Garnish with parsley or basil and serve with brown rice or pasta or your choice.