[{"data":1,"prerenderedAt":405},["ShallowReactive",2],{"recipe:ndambe":3,"recipe:country:senegal":180},{"slug":4,"title":5,"nativeName":6,"pronunciation":7,"countrySlug":8,"region":9,"emoji":10,"summary":11,"intro":12,"story":13,"whyThis":14,"tips":19,"substitutions":26,"variations":39,"serveWith":49,"storage":51,"faq":52,"equipment":68,"baseServings":72,"prepMinutes":73,"cookMinutes":74,"restMinutes":75,"difficulty":76,"course":77,"diet":80,"mainIngredients":84,"ingredients":89,"instructions":139,"nutrition":161,"images":168,"keywords":172,"publishedAt":178,"updatedAt":178,"authorSlug":179},"ndambe","Ndambé (Senegalese Bean Stew Sandwich)","Ndambe","n-DAM-bay","senegal","Dakar","🥖","Cowpeas stewed soft with onion, tomato and chilli, then spooned into a split baguette — the standing-up breakfast that gets Dakar to work every morning.","Breakfast in Dakar is frequently a bean sandwich, and ndambé is the reason. Cowpeas are simmered until they slump, then folded into a dark base of onion and tomato paste with enough chilli to wake you up and enough oil to make the whole thing cling to bread. It is loaded into a split baguette, wrapped in paper and eaten on the street with one hand. The taste is savoury, slightly sweet from long-cooked onion, and much more substantial than it looks — this is food built for people who will not eat again until two in the afternoon.","The cowpea, known in English as the black-eyed pea, was domesticated in West Africa and has been grown across the Sahel for thousands of years, which makes ndambé one of the more genuinely ancient things on a Senegalese table, even if its current form is not. The baguette is the newer half of the equation: French bakeries arrived with colonisation and stayed so thoroughly that bread is now baked fresh across Senegal every morning and sold from small stands by the piece.\n\nWhat resulted is a specific kind of urban food. Ndambé belongs to the tangana, the small open-fronted breakfast shacks of Dakar and other Senegalese cities, where a pot of beans sits over low heat from before dawn and a stack of baguettes goes down steadily through the morning. You order by size, the vendor splits the bread, ladles the beans in and sometimes adds a spoon of the oil floating on top, which is the part regulars ask for by name. It is cheap enough to be daily food and filling enough to be lunch if the day goes badly.\n\nThe recipe itself is not fixed. Some cooks add a chopped hard-boiled egg or fried onions on top; some make it soupier and eat it in a bowl with bread on the side; some stir in a little mustard, which is a very Senegalese thing to do to anything. What stays constant is the texture — the beans should be soft enough that pressing them against the side of the pot breaks them, so the stew holds together in the bread instead of rolling out of it.",[15,16,17,18],"Cooks the beans to the right side of soft, so the filling stays in the bread rather than escaping down your wrist.","Builds the tomato base separately and adds it to the beans, which keeps the acid from stalling the beans as they soften.","Scales cleanly: the pot keeps for days and the sandwich is assembled fresh each morning.","Vegan as written, without substituting anything or apologising for it.",[20,21,22,23,24,25],"Soak the cowpeas overnight in plenty of cold water. Unsoaked beans can take twice as long and cook unevenly, leaving hard ones in an otherwise soft pot.","Salt the beans only after they are tender. Salt added at the start toughens the skins and you will still be simmering an hour later than planned.","Fry the tomato paste until it goes dark and a little sticky before it meets the beans. This is where the depth in an otherwise simple stew comes from.","Crush roughly a quarter of the cooked beans against the side of the pot with a spoon. The starch they release thickens the stew and stops it sliding out of the baguette.","Use more oil than feels virtuous. Ndambé is meant to be glossy, and the oil is what carries the flavour into the bread.","Warm the baguette for a couple of minutes before filling it. Cold bread goes soggy on contact; warm bread crisps against the hot filling.",[27,31,35],{"original":28,"swap":29,"note":30},"Dried cowpeas","2 tins of black-eyed peas, drained and rinsed","Skip the soaking and boiling, add them to the finished tomato base with 200 ml water and simmer 15 minutes. The texture is softer and less distinct but perfectly good on a weekday.",{"original":32,"swap":33,"note":34},"Baguette","Any crusty white roll, or serve the stew over rice","A crust that shatters is the point. Soft sandwich bread collapses under the wet filling within a minute.",{"original":36,"swap":37,"note":38},"Scotch bonnet","Half a teaspoon of chilli flakes, or a milder red chilli","Street ndambé is properly hot. Scale it to your morning rather than to tradition.",[40,43,46],{"name":41,"description":42},"Ndambé with egg","A sliced hard-boiled egg laid into the baguette on top of the beans, which turns a snack into a full breakfast for very little effort.",{"name":44,"description":45},"Ndambé bowl","Loosened with extra water into something closer to a soup, eaten with a spoon and torn bread. This is how it is often served at home rather than on the street.",{"name":47,"description":48},"Mustard ndambé","A tablespoon of Dijon stirred in at the end, adding a sharp edge that cuts the oil. Not universal, but common enough in Dakar to count as traditional.",[50],"Sweet strong café Touba or mint tea, and a chilli sauce on the side for anyone who wants the sandwich to hurt slightly.","The bean stew keeps 4 days in the fridge and improves after the first, once the tomato and onion have settled in. Reheat with a splash of water over low heat until it loosens and steams. It freezes for 3 months in portions. Never store it already inside the bread — assemble the sandwich only when you are about to eat it, or the baguette turns to paste.",[53,56,59,62,65],{"question":54,"answer":55},"What beans are used in ndambé?","Cowpeas, sold in English-speaking countries as black-eyed peas or black-eyed beans. They are small, quick-cooking and hold their shape better than most beans while still going creamy inside. Tinned black-eyed peas are a legitimate shortcut if you are cooking on a weekday morning.",{"question":57,"answer":58},"Can I skip soaking the beans?","You can, but expect the cooking time to roughly double and the results to be less even, since older beans in the same bag hydrate at different rates. If you forget, a quick soak works: cover with boiling water, leave for one hour, drain and proceed as written.",{"question":60,"answer":61},"Is ndambé eaten only at breakfast?","It is mainly a morning food, sold from tangana breakfast stands across Dakar from before dawn, but there is nothing stopping it from being lunch or a late snack and plenty of people treat it that way. At home it is often served in a bowl rather than a sandwich.",{"question":63,"answer":64},"My stew is too runny for a sandwich. How do I fix it?","Simmer it uncovered for another 10 minutes, and crush more of the beans against the side of the pot as it reduces. The released starch is what thickens it. Adding flour or cornflour would work mechanically but changes the flavour and is not how it is done.",{"question":66,"answer":67},"Can I make this with less oil?","Yes, though you will lose some of what makes it recognisable. The oil emulsifies with the tomato base and coats the beans, which is why street ndambé glistens. Cutting it to 2 tablespoons still produces a good stew — it just eats more like a bean pot and less like the sandwich filling it is meant to be.",[69,70,71],"Medium saucepan","Wide frying pan","Serrated bread knife",4,15,75,480,"easy",[78,79],"breakfast","street-food",[81,82,83],"vegetarian","vegan","dairy-free",[85,86,87,88],"onion","tomato","tomato-paste","scotch-bonnet",[90,95,100,105,110,113,118,120,122,124,129,133,136],{"qty":91,"unit":92,"name":93,"group":94},350,"g","dried cowpeas (black-eyed peas), soaked overnight","For the beans",{"ref":96,"qty":97,"unit":98,"name":99,"group":94},"bay-leaf",1,"piece","bay leaf",{"qty":101,"unit":102,"name":103,"noScale":104,"group":94},1.2,"l","water",true,{"qty":106,"unit":107,"name":108,"group":109},5,"tbsp","vegetable oil","For the base",{"ref":85,"qty":111,"unit":98,"name":112,"group":109},2,"large onions, finely chopped",{"ref":114,"qty":115,"unit":116,"name":117,"group":109},"garlic",3,"clove","garlic, finely chopped",{"ref":87,"qty":115,"unit":107,"name":119,"group":109},"tomato paste",{"ref":86,"qty":111,"unit":98,"name":121,"group":109},"ripe tomatoes, chopped",{"ref":88,"qty":97,"unit":98,"name":123,"group":109},"scotch bonnet, finely chopped",{"ref":125,"qty":126,"unit":127,"name":128,"group":109},"black-pepper",0.5,"tsp","ground black pepper",{"qty":130,"unit":131,"name":132,"group":109},null,"to taste","salt",{"qty":111,"unit":98,"name":134,"group":135},"baguettes, halved and split","To serve",{"ref":137,"qty":111,"unit":98,"name":138,"optional":104,"group":135},"scallions","scallions, thinly sliced",[140,145,150,154,158],{"title":141,"text":142,"timerSeconds":143,"tip":144},"Boil the cowpeas","Drain the soaked beans, put them in a saucepan with the bay leaf and fresh water and bring to a boil. Skim off the foam, lower to a steady simmer and cook uncovered for 40 to 50 minutes, until a bean crushes easily between finger and thumb. Do not salt them yet.",2700,"Start testing at 40 minutes. Cowpeas go from firm to falling apart faster than larger beans.",{"title":146,"text":147,"timerSeconds":148,"tip":149},"Fry the onions dark","While the beans cook, heat the oil in a wide frying pan over medium heat and cook the onions with a pinch of salt for 15 minutes, stirring occasionally, until they have collapsed and turned deep gold at the edges.",900,"This is far longer than sweating onions. Stop when they smell sweet and toasted rather than sharp.",{"title":151,"text":152,"timerSeconds":153},"Build the tomato base","Add the garlic, tomato paste and chopped chilli and fry for 5 minutes until the paste darkens and starts to stick to the pan, then stir in the fresh tomatoes and cook 5 minutes more until they break down and the mixture pulls away from the base in a mass.",600,{"title":155,"text":156,"timerSeconds":153,"tip":157},"Combine and thicken","Drain the beans, reserving 250 ml of their cooking water, and tip them into the tomato base with about half that liquid. Season with salt and pepper and simmer for 10 minutes, crushing roughly a quarter of the beans against the side of the pan as you stir.","Aim for a stew that mounds on a spoon and only just settles. Add more bean water if it stiffens too far.",{"title":159,"text":160},"Fill the baguettes","Warm the split baguettes for 2 minutes in a hot oven or dry pan, then spoon the hot beans generously into each one, chasing them down with a little of the oil from the surface of the pan. Scatter over the scallions, press the bread closed and eat while the crust is still crisp.",{"calories":162,"protein":163,"carbs":164,"fat":165,"fiber":166,"sodium":167,"estimated":104},560,20,82,17,13,720,[169],{"src":170,"alt":171},"\u002Fimages\u002Frecipes\u002Fndambe\u002Fhero.svg","Split baguette filled with dark red-brown cowpea stew, scallions scattered over the top, held over paper wrapping",[4,173,174,175,176,177],"bean sandwich","black-eyed peas","senegalese breakfast","dakar street food","vegan west african","2026-08-20","dishroute-kitchen",{"items":181,"total":187,"page":97,"limit":403,"hasMore":404},[182,208,232,255,281,288,311,334,357,381],{"slug":183,"title":184,"nativeName":185,"countrySlug":8,"region":9,"baseServings":186,"prepMinutes":187,"cookMinutes":73,"restMinutes":188,"difficulty":76,"course":189,"diet":191,"mainIngredients":194,"images":197,"keywords":201,"publishedAt":178,"updatedAt":178,"authorSlug":179},"bissap","Bissap (Senegalese Hibiscus Iced Drink)","Bissap",6,10,90,[190],"drink",[81,82,192,83,193],"gluten-free","nut-free",[195,196],"mint","lime",[198],{"src":199,"alt":200},"\u002Fimages\u002Frecipes\u002Fbissap\u002Fhero.svg","Tall glass of deep ruby hibiscus drink over ice with a mint sprig, jug of the same drink behind it",[183,202,203,204,205,206,207],"hibiscus drink","sorrel","flor de jamaica","senegalese drink","iced tea","caffeine-free",{"slug":209,"title":210,"nativeName":211,"countrySlug":8,"region":9,"baseServings":72,"prepMinutes":163,"cookMinutes":212,"restMinutes":213,"difficulty":76,"course":214,"diet":216,"mainIngredients":218,"images":221,"keywords":225,"publishedAt":178,"updatedAt":178,"authorSlug":179},"dibi","Dibi (Senegalese Charcoal-Grilled Lamb with Onions)","Dibi",30,120,[79,215],"main",[83,217],"halal-friendly",[219,85,220],"lamb","lemon",[222],{"src":223,"alt":224},"\u002Fimages\u002Frecipes\u002Fdibi\u002Fhero.svg","Chopped charred lamb pieces on paper covered with pale softened onions, torn baguette beside the tray",[209,226,227,228,229,230,231],"dibiterie","grilled lamb","senegalese barbecue","charcoal lamb","mustard onions","street food",{"slug":233,"title":234,"nativeName":235,"countrySlug":8,"region":9,"baseServings":72,"prepMinutes":236,"cookMinutes":212,"restMinutes":212,"difficulty":237,"course":238,"diet":240,"mainIngredients":242,"images":245,"keywords":249,"publishedAt":178,"updatedAt":178,"authorSlug":179},"fataya","Fataya (Senegalese Fried Fish Turnovers)","Fataya",45,"medium",[79,239],"snack",[241,83],"pescatarian",[243,244,85,196],"white-fish","flour",[246],{"src":247,"alt":248},"\u002Fimages\u002Frecipes\u002Ffataya\u002Fhero.svg","Golden fork-crimped half-moon pastries stacked on a plate beside a bowl of raw onion and chilli lime sauce",[233,250,251,252,253,254],"fish turnover","senegalese pastry","kaani sauce","west african street food","fried snack",{"slug":256,"title":257,"nativeName":258,"countrySlug":8,"region":259,"baseServings":186,"prepMinutes":260,"cookMinutes":261,"difficulty":237,"course":262,"diet":263,"mainIngredients":264,"images":269,"keywords":273,"publishedAt":178,"updatedAt":178,"authorSlug":179},"senegalese-mafe","Mafé (Senegalese Peanut Butter Stew)","Maafe","Sine-Saloum",25,100,[215],[83,217],[265,266,267,268,87],"beef-chuck","peanut-butter","cassava","sweet-potato",[270],{"src":271,"alt":272},"\u002Fimages\u002Frecipes\u002Fsenegalese-mafe\u002Fhero.svg","Thick rust-orange groundnut stew with chunks of beef, cassava and carrot, oil pooling on the surface, beside white rice",[274,275,276,277,278,279,280],"mafe","maafe","groundnut stew","peanut stew","tigadegena","senegalese beef","west african",{"slug":4,"title":5,"nativeName":6,"countrySlug":8,"region":9,"baseServings":72,"prepMinutes":73,"cookMinutes":74,"restMinutes":75,"difficulty":76,"course":282,"diet":283,"mainIngredients":284,"images":285,"keywords":287,"publishedAt":178,"updatedAt":178,"authorSlug":179},[78,79],[81,82,83],[85,86,87,88],[286],{"src":170,"alt":171},[4,173,174,175,176,177],{"slug":289,"title":290,"nativeName":291,"countrySlug":8,"region":292,"baseServings":72,"prepMinutes":260,"cookMinutes":293,"restMinutes":294,"difficulty":76,"course":295,"diet":296,"mainIngredients":297,"images":299,"keywords":303,"publishedAt":178,"updatedAt":178,"authorSlug":179},"senegalese-poulet-yassa","Poulet Yassa (Senegalese Lemon and Onion Chicken)","Yassa ginaar","Casamance",55,240,[215],[83,217],[298,85,220],"chicken",[300],{"src":301,"alt":302},"\u002Fimages\u002Frecipes\u002Fsenegalese-poulet-yassa\u002Fhero.svg","Browned chicken pieces buried in a tangle of softened golden onions with lemon wedges and white rice alongside",[304,305,306,307,308,309,310],"poulet yassa","yassa chicken","lemon chicken","onion sauce","senegalese","casamance","west african braise",{"slug":312,"title":313,"nativeName":314,"countrySlug":8,"region":292,"baseServings":186,"prepMinutes":212,"cookMinutes":315,"difficulty":237,"course":316,"diet":318,"mainIngredients":319,"images":323,"keywords":327,"publishedAt":178,"updatedAt":178,"authorSlug":179},"soupou-kandia","Soupou Kandia (Senegalese Okra and Palm Oil Stew)","Soupu kanja",50,[317,215],"soup",[241,83,192],[320,243,321,322],"okra","shrimp","rice",[324],{"src":325,"alt":326},"\u002Fimages\u002Frecipes\u002Fsoupou-kandia\u002Fhero.svg","Deep orange okra and palm oil stew with fish pieces and shrimp, ladled over a mound of white rice in a bowl",[328,329,330,331,332,333],"soupou kandia","okra stew","palm oil","senegalese seafood","west african okra","soupu kanja",{"slug":335,"title":336,"nativeName":337,"countrySlug":8,"region":9,"baseServings":186,"prepMinutes":73,"cookMinutes":260,"restMinutes":213,"difficulty":76,"course":338,"diet":340,"mainIngredients":341,"images":346,"keywords":350,"publishedAt":178,"updatedAt":178,"authorSlug":179},"thiakry","Thiakry (Senegalese Millet Couscous Yogurt Dessert)","Caakiri",[339],"dessert",[81,192,193],[342,343,344,345],"millet","yogurt","condensed-milk","nutmeg",[347],{"src":348,"alt":349},"\u002Fimages\u002Frecipes\u002Fthiakry\u002Fhero.svg","Glass of thick pale millet and yoghurt dessert speckled with grated nutmeg, a long spoon resting inside",[335,351,352,353,354,355,356],"caakiri","degue","millet dessert","yogurt pudding","senegalese sweet","no-bake",{"slug":358,"title":359,"nativeName":360,"romanized":361,"countrySlug":8,"region":362,"baseServings":186,"prepMinutes":363,"cookMinutes":261,"difficulty":364,"course":365,"diet":366,"mainIngredients":367,"images":370,"keywords":374,"publishedAt":178,"updatedAt":178,"authorSlug":179},"senegalese-thieboudienne","Thieboudienne (Senegalese Fish and Broken Rice)","Ceebu jën","Ceebu jen","Saint-Louis",40,"hard",[215],[241,83],[243,322,267,368,369],"cabbage","tamarind",[371],{"src":372,"alt":373},"\u002Fimages\u002Frecipes\u002Fsenegalese-thieboudienne\u002Fhero.svg","Platter of orange broken rice topped with fish steaks, cassava, carrot and cabbage wedges with a whole red chilli",[375,376,377,378,280,379,380],"thieboudienne","ceebu jen","senegalese fish rice","broken rice","national dish","one pot",{"slug":382,"title":383,"nativeName":384,"countrySlug":8,"region":259,"baseServings":186,"prepMinutes":212,"cookMinutes":385,"difficulty":237,"course":386,"diet":387,"mainIngredients":388,"images":391,"keywords":395,"publishedAt":178,"updatedAt":178,"authorSlug":179},"senegalese-thiere","Thiéré Bassi Salté (Senegalese Millet Couscous with Lamb)","Cere basi salte",95,[215],[83,217],[219,389,368,390],"couscous","carrot",[392],{"src":393,"alt":394},"\u002Fimages\u002Frecipes\u002Fsenegalese-thiere\u002Fhero.svg","Platter of pale millet couscous hollowed in the centre and filled with lamb, pumpkin, cabbage and carrot in red sauce",[396,397,398,399,400,401,402],"thiere","bassi salte","millet couscous","senegalese lamb","nététou","steamed grain","celebration dish",24,false,1787360055137]