A rick curry with firm white fish and a flavourful broth inspired by coastal Indian flavours, this is relatively simple to make for a one-pot dinner. Serve with a side of steamed basmati rice.
Season the fish generously with salt & set aside. Add the cumin seeds, coriander seeds and black mustard seeds to a large skillet. Set over medium heat and gently toast the seeds. Once they begin to dance around the pan - after 1-2 minutes - add 2 tbsp of neutral oil.
Add the onion and a generous pinch of salt and cook, stirring frequently, until the onions begin to brown around the edges - about 10 minutes.
Add the ginger, cilantro stems, garlic, chilis and tomato paste. Cook, stirring constantly, until very fragrant and the tomato paste becomes dark and sticky - about 2 minutes.
Add the curry powder, cumin, coriander, turmeric and cardamom. Cook until very fragrant - about 30 seconds. Then, pour in 120ml (½cup) of coconut milk and stir into the onion mixture. Cook for 2-3 minutes longer, until the fat begins to separate from the coconut milk.
Pour in the tomatoes and tamarind paste along with 250ml (1 cup) of water and ¼ tsp of salt. Bring to a simmer, reduce the heat to low and allow to simmer for 15 minutes - stirring occasionally.
Stir the fish into the curry and allow to simmer until completely cooked through - 5-10 minutes. Stir in half of the cilantro leaves and serve, topping with the remaining cilantro.