I used a combination of kidney beans (rajma/maharagwe), cowpeas (chora/kunde) and black-eyed peas (lobia). You can use any combination of beans that you like, or even just a single kind, whatever you have available. Combine the beans, wash then soak them overnight or for at least 6 hours so they cook faster when you boil them. You can also use beans from a can, in which case you will not need to soak or boil. Use DOUBLE the amount of beans if they are canned/pre-cooked. This is because the dried beans mentioned in the recipe will double in volume after soaking and boiling.
This dish works best with the white fresh maize (mahindi). Remove the kernels off the cob and measure out 2 full cups. Alternatively if white maize is not available where you are, you can use the yellow sweet corn off the cob or canned.
Give the pre-soaked beans a rinse and put them into a pan or pressure cooker. Add the maize (if you are using from a can you will not need to boil the corn). Add enough water to cover everything and sprinkle some salt. Boil or pressure cook them until tender (takes about 12 minutes in a pressure cooker). Drain but reserve the water they were cooked in as it contains a lot of flavour/nutrients and you can use this in place of plain water when cooking the githeri later.
Boil the cubed steak (if you are using it) in water with a quarter tsp each of salt, pepper, ginger and garlic until the meat is tender. Drain but reserve the stock/soup.
Now we can start preparing the githeri.
Heat the oil in a pan, add the chopped onions and fry until translucent (but not brown). Add the garlic paste and tomato paste followed by the chopped tomatoes. Cook on low heat until the tomatoes are mushy, stirring regularly and breaking up the tomato pieces with your spoon as you stir. If the mixture begins to stick to the bottom of the pan, add some of the water leftover from cooking the beans, a little bit at a time. Then add the chopped chillies.
Once the tomatoes are cooked, add the cubes of steak and mix them in, followed by all the powdered spices.
Next, add the boiled cubed potatoes and the cooked beans. Give everything a mix, then add the stock/soup leftover from boiling the meat or if you are not using any meat, dissolve a stock cube in some water and add it in. The liquid should just about cover the beans. Sprinkle 2 tsp. salt.
Allow the githeri to gently simmer on low heat, giving an occasional stir until the mixture thickens and the flavours are well combined. Taste and adjust salt and spice.
Lastly, add the lemon juice which will help intensify all the flavours. Mix and serve hot, with a garnish of coriander or chopped chillies if you like it spicy, and some extra slices of lemon to squeeze over the beans.
Leftovers will keep very well refrigerated or frozen.