Heat the oil in a large heavy-based pan with a lid. Add the onion and cook until translucent.
Add the garlic, ginger and green chillies and cook for two minutes, taking care not to let them brown.
Add the turmeric and cook for a few seconds, then pour in the coconut milk. Bring slowly to the boil, stirring right from the bottom of the mixture.
Season with salt, then add the cardamom, cloves, curry leaves and cinnamon. Simmer for a couple of minutes, until the mixture has thickened slightly, then add the coriander and cook for another minute or two.
Add the prawns and cook for 2-4 minutes, depending on their size. Cover the pan, remove from the heat and set aside for about five minutes. The prawns will continue to cook in the residual heat of the curry (more cooking on the stove will spoil the prawns by overcooking).
Serve with steamed jasmine rice and a fresh onion salad.