Heat oil in a large skillet or Dutch oven over medium heat.
Add onion and sauté for 5–6 minutes until softened and translucent.
Stir in garlic and ginger and cook for 1 minute until fragrant.
Add all spices and stir for 30 seconds to bloom the flavors.
Add chicken and cook until lightly browned on all sides.
Stir in crushed tomatoes and broth.
Reduce heat and simmer gently for 20 minutes.
Stir in coconut milk and lime juice.
Simmer an additional 10 minutes until chicken is tender and sauce is silky.
Taste and adjust seasoning as desired.
Garnish with fresh cilantro and serve over rice.