Heat 1 tbsp of oil in a large pan over medium heat.
Add the finely chopped red onion and cook for 3-4 minutes until softened.
Stir in the minced garlic and grated ginger, cooking for 1 minute while stirring to avoid burning.
Add the curry powder, cumin, garam masala, turmeric, chili powder, and salt. Toast the spices for 30 seconds to release their aromas.
If the mixture looks too dry, drizzle in a touch of oil before stirring in the chopped tomatoes and tomato puree.
Simmer for 3-4 minutes, then carefully blend the mixture until smooth using a hand blender (or transfer to a blender, then return to the pan).
Add the coconut milk, vegetable stock, and cauliflower florets. Stir well to coat.
Simmer for 10-15 minutes until the cauliflower is tender but still retains slight crunch.
Add the chickpeas and cook for an additional 5 minutes until heated through.
Adjust seasoning to taste, then serve with a drizzle of vegan cream and fresh coriander, if desired.