01 - Heat olive oil in a large pot over medium heat. Add chopped onion and sauté until translucent, approximately 4 minutes.
02 - Stir in minced garlic and grated ginger; cook for 1 minute until fragrant, being careful not to burn.
03 - Add chicken pieces and cook until lightly browned on all sides, about 5 minutes. For vegetarian version, proceed to next step.
04 - Sprinkle in curry powder, cumin, coriander, turmeric, and chili flakes. Stir continuously to coat chicken and onions evenly with spices.
05 - Add sliced carrots and diced bell pepper; cook for 3 minutes to begin softening.
06 - Pour in coconut milk and broth, stirring to combine and deglaze the bottom of the pot.
07 - Add chickpeas (and tofu if using vegetarian option). Bring mixture to a gentle simmer.
08 - Reduce heat to low, cover, and cook for 15 minutes, stirring occasionally to prevent sticking.
09 - Stir in baby spinach and cook until just wilted, about 2 minutes.
10 - Season with salt and pepper to taste. Remove from heat, garnish with fresh cilantro, and serve with lemon wedges.