Wash and slit the baby aubergines into quarters, keeping the stems intact so they hold together. Soak them in salted water for 10–15 minutes, then pat dry.
In a dry pan, roast sesame seeds, cashew nuts, coconut and poppy seeds (if using) until golden and fragrant. Allow to cool, then grind into a smooth paste with a few tablespoons of water.
Heat 1 tablespoon of oil in a pan. Shallow-fry the aubergines until slightly browned and soft (but not fully cooked through). Set aside.
In the same pan, add another tablespoon of oil. Temper with mustard and cumin seeds. Sauté the chopped onion until golden, then add ginger-garlic paste. Cook for a minute until aromatic.
Add turmeric, chilli powder, coriander powder and salt. Stir well, then add the fresh tomatoes (chopped) and the ground nut-coconut paste and cook for 3–5 minutes. Blend until smooth, then pour it back in the pan.
Add the fried aubergines to the gravy, stirring gently to coat. Add tamarind paste and a cup of water (adjust based on how thick or thin you like your gravy). Cover and simmer on low for 10–15 minutes or until the aubergines are tender.
Sprinkle garam masala, garnish with chopped coriander, and serve hot with steamed rice or warm naan.