Quick Recipe Version (TL;DR)
Quick Ingredients
- 2 tbsp vegetable oil (plus 1 tbsp for crisping, optional)
- 1 large yellow onion, diced
- 4 cloves garlic, minced
- 1 tbsp minced fresh ginger
- 1 serrano or bird’s eye chile, minced (optional)
- 2 tsp mild curry powder
- 1 tsp paprika (optional)
- 3 medium tomatoes, diced (about 2 cups)
- 1 lb potatoes, peeled and cut into 3/4-inch cubes
- 3 cups cooked maize kernels (white hominy), drained and rinsed (from 2 x 15 oz cans)
- 3 cups cooked beans (kidney or pinto), drained and rinsed (from 2 x 15 oz cans)
- 2 to 3 cups low-sodium vegetable stock or water
- 1 1/2 tsp kosher salt, plus more to taste; 1/2 tsp black pepper
- 1 tbsp lemon juice
- 1/2 cup chopped fresh cilantro
Do This
- 1. Heat 2 tbsp oil in a heavy pot over medium heat (surface ~350°F). Sauté onion with 1/2 tsp salt for 6–8 minutes until golden at the edges.
- 2. Add garlic, ginger, and chile; cook 1 minute. Stir in curry powder and paprika; bloom 30 seconds.
- 3. Add tomatoes and 1/4 tsp salt; cook 5–7 minutes until thick and jammy.
- 4. Stir in potatoes and 2 cups stock; bring to a boil, then simmer gently (190–200°F) covered for 12–15 minutes until just tender.
- 5. Add maize and beans; simmer 8–10 minutes, adding more stock for a soupier bowl. Season with remaining salt and pepper.
- 6. Off heat, stir in lemon juice and half the cilantro. Serve with remaining cilantro on top.
- 7. For crispy edges (optional): Heat 1 tbsp oil in a cast-iron skillet over medium-high (375–400°F). Press 2–3 cups githeri into an even layer; cook 4–6 minutes undisturbed, flip in sections, and cook 2–4 minutes more.
Why You’ll Love This Recipe
- Classic Kenyan comfort food: warming, hearty, and deeply satisfying.
- Two delicious ways to serve: soupy and cozy, or pan-fried with crisp, caramelized edges.
- Mostly pantry staples and a single pot; minimal fuss, big flavor.
- Naturally vegetarian, protein-rich, and perfect for meal prep.
Grocery List
- Produce: Yellow onion, garlic, fresh ginger, serrano/bird’s eye chile (optional), tomatoes, potatoes, cilantro, lemon
- Dairy: Optional butter or ghee for finishing
- Pantry: Vegetable oil, mild curry powder, paprika (optional), kosher salt, black pepper, canned white hominy or maize kernels, canned kidney or pinto beans, low-sodium vegetable stock
Full Ingredients
Githeri Base (Soupy Stew)
- 2 tbsp vegetable oil (such as sunflower or canola)
- 1 large yellow onion (about 10 oz), diced
- 4 cloves garlic, minced
- 1 tbsp fresh ginger, minced
- 1 serrano or 2 bird’s eye chiles, minced (optional for heat)
- 2 tsp mild curry powder (Kenyan/Madras style)
- 1 tsp paprika (optional, for color)
- 3 medium ripe tomatoes, diced (about 2 cups; or 1 x 14.5 oz can diced tomatoes, drained)
- 1 lb potatoes, peeled and cut into 3/4-inch cubes
- 3 cups cooked maize kernels (preferably white hominy), drained and rinsed (from 2 x 15 oz cans)
- 3 cups cooked beans (red kidney or pinto), drained and rinsed (from 2 x 15 oz cans)
- 2 to 3 cups low-sodium vegetable stock or water, as needed for desired consistency
- 1 1/2 tsp kosher salt, divided, plus more to taste
- 1/2 tsp freshly ground black pepper
- 1 tbsp lemon juice (or lime juice)
- 1/2 cup fresh cilantro (dhania), roughly chopped
For Pan-Fried Crispy Githeri (Optional)
- 1 tbsp vegetable oil (plus more as needed)
- 1 tbsp butter or ghee (optional, for richness)
If Starting from Dried (Make-Ahead Option)
- 1 1/2 cups dried maize/field corn or dried white hominy (about 250 g) and 1 1/2 cups dried kidney beans (about 285 g); soak separately 8–12 hours
- Cook in plenty of water until tender (maize 1 1/2–2 1/2 hours; beans 45–75 minutes), or pressure cook soaked maize+beans together on High for 30 minutes, natural release 15 minutes; drain and measure 3 cups maize + 3 cups beans

Step-by-Step Instructions
Step 1: Prep and drain
Dice the onion, mince the garlic and ginger, and chop the tomatoes and cilantro. Peel and cube the potatoes into 3/4-inch pieces. Drain and rinse the cooked maize (hominy) and beans. Have all ingredients within reach for a smooth, one-pot cook.
Step 2: Sauté the aromatics
Heat 2 tbsp oil in a heavy-bottomed pot or Dutch oven over medium heat until shimmering (pan surface around 350°F). Add the onion and 1/2 tsp salt. Cook, stirring occasionally, for 6–8 minutes until softened and golden at the edges. Add the garlic, ginger, and optional chile; cook for 1 minute until fragrant.
Step 3: Bloom spices and cook tomatoes
Sprinkle in the curry powder and paprika; stir constantly for 30–45 seconds to bloom the spices without burning. Add the diced tomatoes and another 1/4 tsp salt. Cook for 5–7 minutes, stirring, until the mixture is thick and jammy and you see a little sheen of oil returning to the surface.
Step 4: Simmer the potatoes
Stir in the potatoes, then pour in 2 cups of stock. Bring to a boil, then immediately reduce to a gentle simmer (about 190–200°F). Cover and simmer for 12–15 minutes, until the potatoes are just tender when pierced with a knife.
Step 5: Add maize and beans
Add the maize and beans. Stir well and simmer, uncovered, for 8–10 minutes to let the flavors mingle. For a soupier bowl, add up to 1 cup more stock; for a thicker, saucier githeri, let it bubble a bit longer to reduce. Season with the remaining 3/4 tsp salt and the black pepper. Stir in the lemon juice.
Step 6: Finish with cilantro and serve soupy
Turn off the heat and fold in half the cilantro. Taste and adjust seasoning with more salt, pepper, or lemon juice. Ladle into warm bowls, scatter the remaining cilantro on top, and serve hot as a comforting, soupy githeri.
Step 7: Optional pan-fried crispy version
Heat 1 tbsp oil (and 1 tbsp butter or ghee if using) in a large cast-iron skillet over medium-high heat (pan surface 375–400°F). Add 2–3 cups of cooked githeri and press into an even layer about 3/4 inch thick. Cook undisturbed for 4–6 minutes until the underside is deeply browned and crisp. Flip in big sections and cook 2–4 minutes more. Sprinkle with fresh cilantro and serve immediately for maximum crunch.
Pro Tips
- Use low-sodium stock so you can control salt at the end; beans and hominy can carry salt from the can.
- For deeper flavor, cook the tomatoes until they look thick and glossy; that “jammy” stage is key.
- Leftover githeri crisps best when chilled first; cold starches brown beautifully.
- If cooking from dried, pre-soak maize and beans separately overnight. Pressure cooking soaked maize+beans together on High for 30 minutes (natural release 15) gives tender, intact kernels.
- Want silkier broth? Mash a few potato cubes against the pot wall during simmering to lightly thicken.
Variations
- Greens Githeri: Stir in 2 cups chopped kale or cabbage during the last 5 minutes of simmering.
- Meaty Option: Brown 8 oz ground beef or sausage after the onions; proceed with the recipe.
- Coconut-Curry Twist: Swap 1 cup of the stock with 1 cup unsweetened coconut milk for a richer, creamier bowl.
Storage & Make-Ahead
Refrigerate cooled githeri in an airtight container for up to 4 days. Freeze up to 3 months; thaw overnight in the fridge. Reheat gently on the stovetop with a splash of stock or water. For best crispy results, pan-fry only the portion you plan to eat right away; crisp edges soften as they sit.
Nutrition (per serving)
Approximate values for 1 of 6 servings (soupy version): 330 calories; 8 g fat; 55 g carbohydrates; 13 g protein; 12 g fiber; 520 mg sodium. Values will vary with brand of stock, beans, and salt used.
