Wash 1 cup of basmati rice 2-3 times until water runs clear. Drain and soak with enough water to cover for about 20 minutes.
2
Heat 1 tablespoon oil and 1 tablespoon ghee in a large pot. Once hot, add whole spices (cinnamon, cardamom, bay leaf, fennel, star anise, black pepper, cloves) and toast on low heat for about 1 minute.
3
Add chopped green onion and green chili, sauté until semi-translucent. Add a pinch of salt to speed up cooking.
4
Add a handful of curry leaves and 1 teaspoon ginger-garlic paste, stir-fry until the raw smell dissipates.
5
Add the chopped tomato and mix well.
6
Add 1 teaspoon garam masala and 1 teaspoon coriander powder, mix thoroughly.
7
Add 1.5 cups of water (ratio 1:1.5 with rice) and check the salt level—it should taste slightly salty. Add chopped cilantro and mix well.
8
When water starts to boil gently, drain the soaked rice and add it to the pot. Mix everything together.
9
Cover the pot with a lid and cook on medium heat for about 10 minutes.
10
After 10 minutes, the rice and liquid should be well combined. Stir once, cover again, reduce to low heat and cook for another 10 minutes.
11
After another 10 minutes, the rice should be perfectly cooked and fluffy. Turn off heat and serve.