Heat oil on medium-high heat.
Add onions and cook until slightly golden
Add ginger-garlic and cook for 15-20 sec
Add tomato puree.
Add all powdered spices and stir well.
Cover and cook for 4-5 minutes or until oil separates.
Add chicken, leave undisturbed for 1-2 minutes to sear it. Then gently flip the pieces and again leave undisturbed for 1-2 minutes.
Now give a good stir, cover and cook the chicken for around 5-7 minutes. Make sure to stir a few times.
Add coconut milk + coconut cream + ¾ cup hot water
Cover and cook for 15–18 minutes or until chicken is done. Make sure to stir regularly.
Turn off the heat. Add garam masala, lemon juice and sugar. Stir and cover so that flavors infuse.
Serve hot with naan or rice.