Summary:
Browned mushrooms, cannellini beans and spinach in a rustic garlic-thyme sauce, served with crisp toast. Four light vegan meals in about 45–50 minutes, without dairy or a blender.A can of beans becomes a cozy supper when it meets deeply browned mushrooms, garlic and a little lemon. This skillet uses a few mashed beans to give the sauce body, with no cream, butter or blender. Scoop it over thick toast, or keep the toast alongside for catching the last spoonful.
Kitchen note: This is an original, research-informed recipe that has not been kitchen-tested. Times and yield are estimates; use the doneness cues below.
Recipe at a glance
- Yield: 4 light meals, each with one-quarter of the skillet and 1 thick slice of toast
- Prep: 15 minutes
- Cook: 30–35 minutes, including toasting while the beans simmer
- Total: About 45–50 minutes
- Equipment: 12-inch (30 cm) skillet, spatula, small bowl and fork, colander, knife, cutting board and toaster
- Diet: Vegan when made with vegan-labeled bread and vegetable broth. Contains wheat if using ordinary bread; check packaged ingredients for other allergens.
Ingredients
Use US measuring cups and spoons. Metric weights for produce and drained beans are approximate; for beans, the drained quantity is separate from the can's labeled net weight.
- 3 tablespoons (45 ml) olive oil, divided
- 1 lb (450 g) cremini mushrooms, trimmed, cleaned and cut into ¼-inch (6 mm) slices
- ½ teaspoon (3 g) fine salt, divided
- 1 small yellow onion, finely diced, about 1 cup (150 g)
- 4 medium garlic cloves, minced, about 1 tablespoon (12 g)
- 1 teaspoon (1 g) dried thyme
- ¼ teaspoon (0.5 g) ground black pepper
- 2 cans cannellini beans, 15 oz (425 g) each, drained and rinsed; about 3 cups (500 g) drained beans in total
- ¾ cup (180 ml) low-sodium, vegan vegetable broth, divided
- 3 oz (85 g) baby spinach, about 3 loosely packed cups
- 1 tablespoon (15 ml) fresh lemon juice
- 4 thick slices vegan bread, about 8 oz (225 g) total
- Optional: 2 tablespoons (8 g) chopped fresh parsley, to finish
- If needed: 2–4 tablespoons (30–60 ml) water, to loosen the sauce
Quick vegan check: Choose bread without milk, whey, butter, eggs or honey, and broth without meat stock or dairy. Plain canned beans should contain beans, water and seasonings rather than animal fat.
How to make it
- Prepare the ingredients and mash a few beans. Slice the mushrooms, dice the onion and mince the garlic. Drain and rinse the beans. Put ½ cup (about 85 g) of the beans in a small bowl and mash with ¼ cup (60 ml) of the broth until mostly smooth. Set the mash, remaining beans and remaining ½ cup (120 ml) broth aside separately.
- Brown the mushrooms. Heat 2 tablespoons (30 ml) of the oil in the skillet over medium-high heat. Add the mushrooms and ¼ teaspoon (1.5 g) of the salt. Cook uncovered for about 12–15 minutes, stirring every couple of minutes. The mushrooms will first release liquid; keep cooking until that liquid has evaporated and the slices are tender with golden-brown patches. Lower the heat if the pan starts to scorch. Transfer the mushrooms to a plate. A smaller skillet may need two batches and a longer cooking time.
- Soften the onion. Reduce the heat to medium. Add the remaining 1 tablespoon (15 ml) oil, onion and remaining ¼ teaspoon (1.5 g) salt. Cook for 4–5 minutes, stirring, until the onion is soft and translucent. Stir in the garlic, thyme and black pepper for 30 seconds, just until fragrant; do not let the garlic turn dark.
- Make the sauce. Pour in the reserved ½ cup (120 ml) broth and scrape up the brown bits with a spatula. Stir in the mashed-bean mixture, remaining whole beans and browned mushrooms. Bring to a gentle simmer, then cook over medium-low heat for 5–6 minutes, stirring occasionally. The beans should be hot throughout and the sauce should lightly coat a spoon. If it becomes too thick or starts to catch, add the optional water 1 tablespoon (15 ml) at a time, up to 4 tablespoons (60 ml).
- Toast and add the greens. While the beans simmer, toast all 4 bread slices until crisp. Stir the spinach into the skillet in two handfuls and cook for 2–3 minutes, until fully wilted and evenly mixed through.
- Finish and serve. Remove the skillet from the heat and stir in the lemon juice. Scatter over the optional parsley. Divide the mixture into 4 equal portions and serve each with 1 slice of toast. Spoon it onto the toast just before eating, or serve the bread alongside to keep it crisp.
Three small things that help
- Wait for the mushroom liquid to disappear. A watery pan is not a failed pan. Continue cooking uncovered before moving on; browning adds flavor that a short simmer cannot replace.
- Keep the sauce rustic. The mashed beans will not make it silky like cream. They create a lightly thickened sauce while most beans stay whole. A few lumps are fine.
- Use the pan, not just the clock. If the sauce is thin, simmer another minute or two before adding spinach. If it is too thick, use the measured water allowance above. Stoves and mushroom moisture vary, so either adjustment may change the total time.
Vegan swaps and budget tips
- Mushrooms: White button mushrooms work in the same 1 lb (450 g) quantity and are often the economical option. Compare the price per ounce or per kilogram; whole mushrooms can be cheaper than presliced ones.
- Beans: Use the same drained amount, about 3 cups (500 g), of canned Great Northern beans or navy beans. Mash ½ cup (about 85 g) as directed. If using home-cooked beans, they must already be fully cooked and safely stored; raw dried beans will not cook in this short simmer.
- Herbs: Replace the thyme with ½ teaspoon (0.5 g) dried rosemary, crushed finely. Skip the optional parsley if you would otherwise buy a bunch for just this meal.
- Spinach: Replace the fresh leaves with 3 oz (85 g) plain frozen chopped spinach, measured before thawing. Thaw safely in the refrigerator, squeeze out excess water and add at the same step; cook until hot throughout. Do not use creamed spinach.
- Bread: Choose a vegan gluten-free loaf if needed, keeping the same four-slice portion. Check that the broth is also gluten-free. This recipe does not require specialty vegan cheese or cream.
Make ahead, storage and reheating
For a head start, dice the onion and drain the beans up to one day ahead; refrigerate them in separate covered containers. Make the skillet in advance if you like, but toast the bread and add it only at serving time. The sauce thickens as it rests.
Transfer leftover skillet mixture to shallow covered containers and refrigerate promptly at 40°F (4°C) or below, within 2 hours of cooking, or within 1 hour if the surrounding temperature is above 90°F (32°C). Use within 3–4 days. Freeze the mixture without the toast for up to 3 months for best quality; thaw overnight in the refrigerator, not on the counter. These handling limits follow USDA leftover-safety guidance.
Reheat in a covered saucepan over medium-low heat, stirring often, with 1–2 tablespoons (15–30 ml) water per portion as needed. Check that the food reaches 165°F (74°C) throughout with a food thermometer, following USDA reheating guidance. Make fresh toast to serve.
More easy plant-based meals
For another way to use pantry beans, try lemon-garlic white bean pasta with spinach. If you prefer a freezer-friendly bowl, see smoky red lentil and carrot soup.
Recipe research and image note
The mushroom guidance was informed by Leah Colins's sautéed mushroom technique at Serious Eats, particularly allowing released moisture to evaporate before browning. Love and Lemons' white bean soup provided a reference for pairing cooked white beans with greens, herbs and a lemon finish. The skillet quantities, mashed-bean sauce and instructions here were written specifically for this recipe; it is not a claim of kitchen testing or a reproduction of either source. The linked culinary recipes may include non-vegan options, which are not used here.
Featured image: AI-generated illustration created with OpenAI for 1 Month Vegan Challenge. It is serving inspiration, not a photograph of a cooked or tested recipe.


