Heat the oil in a large skillet over medium heat until it shimmers, and then add the cumin seeds. Toast them for about 30 seconds until fragrant and slightly darker.
Add chopped garlic and grated ginger to the skillet. Sauté for about 30 seconds until the mixture smells aromatic and starts to bubble gently.
Stir in the diced or crushed tomatoes, along with turmeric, coriander, and a pinch of salt. Cook for 8-10 minutes, stirring occasionally, until the tomatoes have broken down and the sauce darkens slightly.
Add the drained chickpeas to the skillet, stirring to coat them in the tomato-spice mixture. Cook for about 5 minutes, allowing the chickpeas to warm through and absorb the flavors.
Gradually add the fresh spinach, stirring gently until it wilts down and turns bright green, about 2-3 minutes. Be careful not to overcook, so it retains some bite and vibrancy.
If using, pour in the coconut milk and stir to combine. Let the curry simmer gently for another 5 minutes, allowing the sauce to thicken slightly and become creamy.
Squeeze fresh lemon juice over the curry and taste. Adjust salt and acidity as needed, then remove from heat.
Let the curry rest for a couple of minutes to allow flavors to meld, then serve hot over rice or with flatbread, garnished with extra lemon or herbs if desired.