Warm the pot: Heat the oil in a large pot or Dutch oven over medium heat until shimmering.
Sauté aromatics: Add the onion with a pinch of salt and cook 5–7 minutes, stirring, until soft and translucent. Add the garlic and ginger and cook 1 minute until fragrant.
Toast the spices: Stir in curry powder (or garam masala), cumin, turmeric, and red pepper flakes if using.
Cook 30–60 seconds, stirring, to wake up the flavors.
Add tomato paste: Stir in tomato paste and cook 1–2 minutes until it darkens slightly and smells sweet. This step builds depth.
Simmer with liquids: Add chickpeas, coconut milk, and 1 cup broth. Stir to combine and bring to a gentle simmer.
Reduce heat to medium-low.
Cook to meld: Simmer uncovered for 10–12 minutes, stirring occasionally. If it gets too thick, add a splash more broth. Taste and season with salt and pepper.
Fold in the greens: Add the spinach in batches, stirring until wilted, about 2–3 minutes.
If using mature spinach, cook an extra minute until tender.
Finish and brighten: Stir in lemon or lime juice. Taste and adjust salt, pepper, and heat. Add more citrus for brightness if desired.
Serve: Ladle into bowls and top with chopped cilantro or parsley.
Serve with rice, naan, or crusty bread.