In a large pot on medium heat, add olive oil, onions and cook for 5-8 minutes or until onions are soft.
Add in all remaining ingredients on the recipe list and stir. Bring the pot to a boil and let cook at a boil for 10 minutes.
Reduce to a simmer and cook for 2 hours, stirring occasionally.
Adjust seasonings to taste. Serve hot or warm with optional garnishes like fresh spinach or coconut milk yogurt.
Store leftovers in an airtight glass container for up to 1 week.