Rinse and soak basmati rice for 20 to 30 minutes
Heat oil or ghee in a pot
Add whole spices like bay leaf, cumin, cloves, cardamom, and cinnamon
Add sliced onions and sauté until golden
Add ginger-garlic paste and cook briefly
Add chopped vegetables or meat and sauté
Add salt and spices like turmeric, chili powder, and garam masala
Add drained rice and gently mix
Add water in the correct ratio
Cover and cook on low heat until rice is done
Let it rest for a few minutes
Fluff with a fork and serve
