Soak the rice for 20-30 minutes.
Rinse the rice in a mesh strainer under running cold water to remove extra starch, and then allow it to drip dry.
Heat a saucepan with 1 tablespoon of oil over a high flame.
After 60 seconds when the oil is hot, fry the cloves and cardamom for 30 seconds.
Add the drained rice and sautéed it stirring for 60 seconds to lightly toast the rice in the hot oil.
Add water and cover. When the pot is boiling, reduce the flame to low and allow the rice to steam for 15-20 minutes until cooked, and all water has been absorbed.
Meanwhile, in a separate pot over a high flame, boil diced potatoes and carrots until they are fork-tender (about 12-14 minutes)
Drain the cooked potatoes and carrots in a colander.
In a dutch oven heat the vegan butter over a high flame. Once the vegan butter has melted and is bubbling, sauté the cauliflower and cashews, stirring regularly for 3-4 minutes until they are lightly golden brown.
Lower the flame to medium and stir in the chilies, spices, curry leaves, and ginger.
After two minutes, stir in tomatoes and the pre-cooked potatoes and carrots. Sauté for 4 minutes, stirring over medium heat.
Add peas and string beans. Sauté for 2 mins until the string beans are just tender.
Mix in rice rosewater and salt. Make sure to break up any clumps of rice so that the veggies and seasonings are fully distributed, and the rice all becomes a lovely shade of yellow/orange.
To serve, garnish with fresh cilantro (a.k.a. coriander leaves) and fresh mint leaves.