Start off by toasting your mustard seeds in a pan with a glug of oil. Once they start to pop remove them from the pan onto the food processor or pestle and mortar and add all the other ingredients for the spice mix. Mix thoroughly. If you do not have food processor or pestle and mortar you can prepare the spice blend in a bowl by mixing all the spices and adding finely chopped chillies (if using) and garlic and ginger (grated on fine grater).
Once your mix is ready, put half of it aside and mix another half with yoghurt. This is your marinade. Mix it with chicken chunks and set aside for minimum half an hour but the longer the better.
Melt the butter in a large saucepan, add sliced onions and the remaining half of the spice mix then fry gently for good 10-15 minutes until onions start getting soft.
Add tomato puree, ground almonds, remaining garam masala, 500 ml of boiling water and 0.5 teaspoon of sea salt. Stir well and let it simmer until it visibly reduces and thickens (approx. 5 min), set aside.
Now it's time to cook your chicken. I have tried cooking it on the griddle pan, under the grill and simply browning it in the frying pan which is my personal favourite as it's the quickest way and gives me the most control. Cook your chicken until nicely browned all over and cooked through. Remember not to overcrowd the pan so that it sears instead of stewing. You will have to do it in small batches.
As soon as chicken is cooked, warm up the sauce, add creme fraiche/double cream and stir well. Once it boils, take it off the heat, add your cooked chicken, lime juice and freshly chopped coriander. Adjust seasoning if necessary.
Serve with basmati rice, naan bread, some extra lime and sprinkle of coriander.