Bring a large pot of salted water to the boil. Drop in the washed spinach, blanch for 10 seconds, then drain and cool in iced water. Squeeze out well and finely chop the stalks and roughly chop the leaves. Squeeze again and again until no more water comes out – it should be as dry as possible. If using frozen spinach, skip this step, but do roughly chop it.
When you're ready to cook, lay out all the ingredients within easy reach of the hob. Heat the ghee in a large heavy based frying pan on a medium-high heat and fry the tofu cubes, in batches if necessary, until golden and crusted. Set aside on kitchen paper with a slotted spoon, sprinkling lightly with salt, leaving as much ghee in the pan as possible. Heat until it starts to smoke slightly.
Add the onion, garlic, ginger and chilli to the pan along with the spices and salt and fry, stirring vigorously, until well coloured, but not burnt.
Add the chopped, dry spinach and tofu and stir vigorously until hot – it should catch a little, but watch it doesn't burn. Taste for seasoning and serve.