Heat the oil in a deep and large pan and saute chopped onion, minced cilantro stems (they add much flavour), grated ginger and minced garlic over low heat for 5-7 minutes. Add the curry powder of your choice and stir to combine until you smell the curry aroma, add the chilli flakes.
To the same pan add the cauliflower florets, canned chopped tomatoes, then fill the empty tomato can with water and pour it into the pan, then add potatoes, chickpeas, a pinch of salt and bring to a boil, then cover with a lid and cook on medium heat for 15 minutes.
Take the lid off and add chopped cilantro/coriander leaves, stir to combine and cook uncovered on medium-high for 10 minutes longer or until desired consistency. The curry shouldn't be watery but should form a thick tomato based sauce around the vegetables. Taste and add salt if needed. Then sprinkle with 1 tsp of garam masala.
Serve with rice, flatbreads and chutney.