Wash basmati rice in lots of water. Soak it for 30 mins. Drain and set aside till use.
Heat 1 tblspn of butter and 1 tblspn of oil in a pressure cooker. Add all wholes spices in the list and sauté for 1 mins.
Add onions and green chilli and sauté till golden brown. Add ginger garlic paste and sauté for a min.
Add in tomatoes and cook this till they turn mushy.
Add in coriander leaves and mint leaves and mix well.
Add curd, soya sauce, chilli powder, coriander powder, turmeric powder, salt and mix well.
Add in cooked soya chunks and mix well. Add in soaked drained rice and mix well.
Pour in 3 cups of water and bring this to a boil. Simmer the flame and cook covered for 15-20 mins untill the rice is cooked and absorbed all the water.
Fry onions in a tblspn of ghee or butter and fry till golden brown. Pour this onions over the rice and mix gently.
Garnish with coriander leaves and a squeeze of lemon juice and serve.