Heat oil in pan over medium heat.
Add chopped onion and stir fry till it becomes soft.
Add garlic and stir fry for a few seconds.
Add chopped tomato, salt and the spices.
Mix well. Cover the pan and let the tomatoes cook over low heat till they become soft.
Mash the tomatoes up a bit with the spoon.
Add the beans, maize, cassava and pigeon peas.
Add water and mix well.
Cover the pan and allow the mixture to simmer till all the vegetables are cooked. If required add more water.
Cook till most of the water is evaporated.
Add chopped spinach and mix well. Cook for 2-3 minutes and serve hot githeri. Its usually eaten on its own.