To prepare the vegan cauliflower curry, start by washing the florets in a bowl of water. Remove them and keep them immersed in a bowl of salted water for 5 minutes.
In a pan with a lid, bring 1/2 cup water to boil with 1/4 tsp salt. Add the cauliflower florets into this pan, cover with lid and steam cook for around 5-6 minutes until the florets are cooked but not soft. Drain the florets and keep aside.
Wash the fenugreek leaves well. Drain all the water, finely chop and keep aside.
Roast the peanuts by microwaving on high for 4-5 minutes. Rub off the peels to the extent possible. Keep aside.
For the freshly ground spice paste, take all the ingredients listed under 'spices for toasting' and fry on a low flame for 6-7 minutes until deeply aromatic. Remove this into a dish to cool.
Heat a teaspoon of oil in the same pan and fry the sliced onion and garlic for 5-6 minutes until onion is translucent.
In a mixer, grind the toasted spices, onion-garlic and the roasted peanuts into a very fine paste, adding upto 2-3 tbsp of water.
Cut the tomato into half. Grate each half to get the pulp, discarding the skin when all of the pulp is grated.
Heat remaining 2 tsp of oil in the same pan. Fry cumin seeds. Once it starts spluttering, add the prepared paste and fry it for 2-3 minutes. Add the finely chopped fenugreek leaves or spinach to the paste and allow to cook for 1-2 minutes. Mix in the tomato pulp and bring to a simmer. Add the cooked cauliflower florets, 1/4 tsp salt and cook on high flame for 3-4 minutes until excess liquid has evaporated. Serve hot.