In a deep bottomed pan heat oil and ghee. Add all the whole spices (bay leaf, cinnamon, cloves, cardamom, cumin seeds, pepper corns).
Add onions, cook till onions turn soft and pink.
Then add grated ginger and garlic. Cook until the raw smell of the ginger garlic is gone.
Add finely chopped tomato and cook till tomatoes turn soft and release their juices.
Add slit green chilies and half quantity of mint-coriander leaves.
Add the spice powders (red chili powder, coriander powder, turmeric powder) and salt. Stir and mix well. Add curd and mix again. Add little water (I added about ¼ cup) and cook until vegetables are ¾ cooked(about 8 minutes)
Add potatoes first and cook for about 3 minutes.
Add carrots and beans and cook for another 3 minutes.
Finally add cauliflower, cook for 2 minutes.
Add curd (yogurt) and lime juice.
Add in long grain rice (I used basmati rice) that is rinsed in water and soaked for 10 minutes. If you do wish to soak rice in water, you can add rice directly. I always rinse rice and soak it for few minutes before cooking.
With gentle hands carefully stir rice with the vegetables. Let it cook on low flame for 2 minutes.
Add water (1 cup long grain rice : 1 cup water), Stir everything well.
Finally top the pot with remaining mint-coriander leaves.
Cover the pot with lid, reduce heat to low. Cook for 20 minutes. Cook until all water is evaporated. Do not stir in between and do not keep opening the pot in between. Leave the pot alone and make sure flame is lowest.
Once done, remove pot and let it sit for 10 minutes before you fluff or stir the rice.