Fry the sauce base: Heat oil in a large pan over a medium heat. Add the sliced onion and fry for 3-4 minutes until softening. Add the chillies, ginger and garlic. Cook for 2 minutes until fragrant.
Add the spices: Stir in the chilli powder, turmeric, garam masala and sugar. Fry for 1 minute so the spices toast in the oil and coat the onions.
Add the tomatoes and blend: Stir in the tomato puree and tinned tomatoes. Cook for 3-4 minutes until slightly thickened. Transfer to a blender and blitz until completely smooth.
Sear the chicken: Wipe out the pan and add a tablespoon of fresh oil over a high heat. Season the chicken pieces and fry for 3-4 minutes until lightly coloured on all sides. The chicken does not need to be cooked through yet.
Simmer: Pour the blended sauce back over the chicken. Add the curry leaves. Cover and simmer gently for 10 minutes until the chicken is cooked through.
Finish with yoghurt: Take the pan off the heat. Swirl in the yoghurt rather than stirring it in completely. Scatter over half the coriander. Serve with basmati rice and the remaining coriander on top.
