Heat the oil in a pan when hot add the mustard seeds. Wait for them to pop, then add the fenugreek, green chile, curry leaves, and ginger, stir and fry for a few minutes.
Using a food processor, chop the onion, add to pan, and continue to cook. When brown and soft, add the chili powder and turmeric.
Using the same food processor, blend the tomatoes and add to the pan. Cook for a couple of minutes, add 1 or 2 wineglasses of water and the coconut milk. Simmer for about 5 minutes until it has the consistency of thick heavy cream then season carefully with salt. Take this sauce as a base.
To make the fish curry, add the fish and tamarind to the sauce and simmer for about 6 minutes. Feel free to add some baby spinach at the end of the cooking time.
For the chicken version, stir-fry the chicken strips, and cashew nuts until lightly colored, then add the sauce and simmer for ten minutes.
For the vegetarian version simply add all the vegetables to the sauce at the beginning when you add the onions. Continue to cook as normal and simmer until tender.