Prep the vegetables. Peel and dice the onion, peel and slice the carrots, chop the broccoli and cauliflower into florets, slice the cherry tomatoes into halves and if your baby potatoes are too big then slice into halves. Deseed and finely chop the green chili, and peel and crush the garlic cloves.
In a large pot, heat the oil over medium heat.
Add the cinnamon stick, cloves, black peppercorns, and curry leaves if using. Cook for a couple of minutes, then add the onion and cook until it becomes soft and translucent. Then add garlic, ginger, and chili and cook for a couple of minutes.
Add the turmeric, water, and coconut milk. As well as the salt, and potatoes. Cover with the lid and cook for 5 minutes. Then add the carrots and cook for 3 more minutes.
Add the broccoli and cauliflower and cook for 2-3 more minutes (make sure that all the veggies are soft enough to eat, but they should stay a bit crunchy and the broccoli is still green). And finally, switch off the heat, add the cherry tomatoes and cover with the lid.
Serve over basmati rice or naan bread. You can garnish the curry with fresh cilantro leaves and nigella seeds if available.