Heat coconut oil in a large saucepan over medium heat. Cook onions and cauliflower, stirring occasionally, until slightly softened, about 5 minutes. It is okay to add a little more oil if you think you need it.
Add garlic, ginger, coriander, cumin, turmeric, and cayenne pepper; stir to coat, and cook for another 5 minutes until you start to smell the aroma of the spices cooking.
Stir tomatoes in, stir and coat, and then add the vegetable broth into the mixture. Bring mixture to a boil, cover, and reduce heat. Simmer until flavors have blended, about 5-10 minutes.
Stir spinach into mixture until it begins to wilt. Cover and simmer until spinach is completely wilted and cauliflower is tender, another 5 minutes. I prefer not to cook the spinach too much, its up to you how long to finish cooking.
Taste for salt and pepper. Serve in a soup cup, or as a vegan entree with lentils and rice or quinoa.
I sometimes serve it with quinoa and lentils, and some sprouted whole grain tortillas.