Boil the cauliflower in a pan of boiling water for 2 minutes. Drain in a colander and leave to cool.
Preheat the oven to 180°C (fan)/200°C/400°F/gas mark 6 and place a baking tray in the oven.
Mix the remaining cauliflower ingredients in a large bowl and combine together. Once the florets are cool enough to handle, add them to your spice mix and gently turn them around, coating them well. Be careful not to break up the florets.
Spread evenly on a preheated baking tray and roast in the oven for 20 minutes until lightly charred and just tender in the middle.
Meanwhile, in a good-sized saucepan, heat the oil in a medium heat and add the mustard seeds.
Once the seeds start popping, add the onions and garlic and cook for five minutes.
Roughly chop the tinned tomatoes and add all the contents of the tin to the onions, stirring as you do.
Cook for five minutes, adding a little water if you feel it’s drying out - you want to maintain a liquid sauce throughout the dish.
Add the salt, garam masala and red chilli (if using).
Cook everything through for a further five minutes before adding the quartered fresh tomatoes. Continue to cook for five minutes again before reducing the heat to low.
Add the cauliflower as soon as it’s ready and stir through gently. Add a final dash of water again if the sauce needs loosening up a little.
Serve in warm deep white bowls with a scattering of fresh coriander, a drizzle of thinned coconut yogurt zigzagged across the top and an Indian bread of your choice.