Soak the cashews in warm water for 10 mins. drain the water
Grind together coconut, soaked & drained cashews, fennel seeds, peppercorns, cardamom, clove and cinnamon with 1/3 cup water to a smooth paste. Keep it aside.
Heat oil in a deep and wide pan. add chopped onion and cook till it browns. Add crushed ginger & garlic and green chilli. Cook for 2-3 mins, till the raw smell goes.
Add turmeric and coriander powder. Fry for 2-3 mins.
Add chopped tomato and salt. Cook till tomato becomes soft. Add 2-3 tbsp water to bring the masala together.
Add all the vegetables and mix well. Add 1.5 - 2 cups water / thin coconut milk. Mix well. Bring to boil. Reduce flame to lowest, cover and cook for 15 mins.
Add 1/3 - 1/2 cup of hot water to coconut spice paste.
Remove the curry from fire and add the coconut paste gradually. Mix well and bring back the curry to stovetop. Cover and cook for 5-6 mins on low flame.
Add chopped coriander leaves and mix well.
Let the curry rest for 20-30 mins. Serve with chapathi, poori, appam or idiyappam.
Notes
Keep in mind, the curry tends to thicken a little as it rests. If you prefer a less spicy version, reduce the number of green chilies accordingly. You can use any cooking oil of your choice. I used water to cook the veggies, but if you prefer a richer and creamier version, you can use medium - thick coconut milk.