Bok Choy Black Bean Curry
This Bok Choy and Black Bean Curry is a creamy, hearty, one-pot vegan dinner made with tender baby bok choy, protein-packed black beans, warming spices, and rich coconut milk. Ready in about 20 minutes, it’s an easy plant-based curry that’s perfect for busy weeknights and delicious served over rice or with flatbread.

If you’re looking for an easy dinner that’s nourishing, budget-friendly, and packed with flavor, this bok choy and black bean curry is for you.
The mild sweetness of baby bok choy pairs beautifully with creamy coconut milk, hearty black beans, and spices. The layering of harissa with coriander and garam masala adds a depth of flavor to this easy weeknight vegan dinner that would seem like it took hours to make. Yet, this simple curry takes less than 20 minutes to make and requires very little prep work.
What Makes Me Love This Bok Choy Black Bean Curry
- Quick and Easy: This is made in one pan and takes less than 20 minutes from prep to table.
- Creamy and comforting: Made with coconut milk, this is a comforting curry that’s rich without being heavy.
- Bold flavor: The unique combination of warm South Asian garam masala and coriander, and North African harissa creates an incredible depth of flavor.
- Nutrient-Dense: Bok choy is loaded with vitamins while black beans provide plant-based protein and fiber. The nutrition information can be found in the recipe card below.
- Diet-friendly: This delicious high-protein, high-fiber curry is dairy-free and gluten-free.
Whether you’re trying to use up fresh bok choy or simply craving a satisfying meatless dinner, this curry checks all the boxes.

Ingredients And Substitutions
You’ll only need a handful of pantry staples.
Oil
I used olive oil, but canola oil, sesame oil, or any oil you have on hand will work to sauté the aromatics.
Onion + Garlic + Ginger
Fresh onion, fresh garlic, and fresh ginger add depth and richness. If you would rather not peel and chop these, peeled and chopped onion, garlic, and ginger can be found in the produce section of grocery stores.
Spices
A unique combination of powdered harissa (this is the one I use often, and nope, this is not sponsored), turmeric, coriander, and garam masala provides bold fusion flavor. These spices can be found at stores like Whole Foods or Asian markets. I would urge you not to substitute these spices, as the taste of the curry will not be the same.
Tomato Paste
Concentrates tomato flavor and creates a rich sauce. 1 to 2 Roma tomatoes or 1/2 can of diced tomatoes can be chopped and used instead.
Coconut Milk
Makes the curry creamy and luscious. Almond milk could be used instead, but the curry won’t be as rich. Heavy cream could also be used if you do not want to keep this curry dairy-free.
Black Beans
A wonderful source of plant protein and fiber that makes this curry satisfying. The black beans can be replaced with your favorite beans or even chicken (for a non-vegan curry)
Baby Bok Choy
Adds freshness, texture, vitamins, and minerals. This can be found at most farmers’ markets and Asian stores.
Water
Helps create the perfect curry consistency. Vegetable broth could be used instead for another layer of flavor. Or, if using chicken (instead of beans), chicken broth could also be used.
Salt and Pepper
A pinch of salt and black pepper or white pepper to unite all the flavors.
Would You Like to Save This?
Fresh Parsley
Adds freshness before serving.
Lime
Just a small drizzle of lime juice before serving to brighten everything up.

How to Make This Vegetable Dish
Step 1: Prep
Peel and chop the onion, ginger, and garlic.
Rinse the baby bok choy. I usually soak them in a solution of water and vinegar, then rinse them under tap water and dry them. Then, chop the bok choy so it cooks quickly. I chop off the ends/base, then chop the baby bok choy in finger-sized shreds.
Drain and rinse the canned black beans.
Step 2: The aromatics
Heat the oil in a large skillet or wok over medium-high heat.
Add the diced onion, garlic, and grated ginger.
Cook for about 8 minutes, stirring frequently until the onions become soft and lightly caramelized.

Step 3: The other ingredients
Stir in the bok choy and coriander, harissa, turmeric, tomato paste, and drained black beans, and stir well. Pour in the coconut milk and water, and stir well until smooth. Let simmer about 3-5 minutes.
Step 4: Finishing touches
Stir in the garam masala.
Cook for one final minute.
Season with salt and pepper. Make sure to taste it to see if the salt and pepper are to your preference. If unsalted, then it’s easy to add more salt but harder to remove excess salt.
Finish with chopped parsley and a squeeze of fresh lime juice.
Serve warm with rice, naan, roti, or your favorite store-bought flatbread or pita for a quick and filling dinner.
Cooking Tips
- Chop the baby bok choy. Chop the stems into bite-sized pieces so they cook quickly. But do not overcook them.
- Adjust your heat. Harissa brands vary drastically in spice levels. If you are sensitive to heat, start with 1 to 2 teaspoons of harissa and taste the curry base before adding the rest.
- Use full-fat coconut milk for the creamiest curry. Add more water for a thinner curry.
- Taste before serving and adjust the salt.
Can I use regular bok choy instead of baby bok choy?
Yes! Regular bok choy is excellent for this recipe. Because it is less tender, you can slice the white stems and cook them a bit longer than the green tips of the bok choy.
What should I serve with black bean curry?
This curry is incredibly rich and flavorful, making it perfect to serve over a bed of yellow rice, basmati rice, or quinoa. If you want a low-carb option, cauliflower rice works beautifully to soak up the creamy coconut broth. Naan, roti, or any flatbread would work as well. I had some of this curry with some pita.
Can I make this curry ahead of time?
Yes. This curry is excellent for meal prep because the flavors continue to develop overnight.

Storage and Reheating
Store any leftover curry in an airtight container in the refrigerator for up to 4 days. Allow it to cool completely before freezing in airtight containers for up to three months.
Reheat in a microwave-safe small bowl or in a pan over a stovetop. When reheating on the stove, you may need to splash in a little extra water or coconut milk, as the sauce will naturally thicken up in the fridge.


Ingredients
- 4 tablespoons oil
- 1 onion, diced (3/4 cup approx.)
- 3 garlic cloves, diced
- 2 teaspoons diced ginger
- 4 teaspoons ground coriander
- 3 teaspoons harissa
- ½ teaspoon turmeric
- 4 tablespoons tomato paste
- 1 [13.5-ounce] can coconut milk
- 1 cup water
- 1 [15-ounce] can black beans drained and rinsed
- 2½ cups chopped baby bok choy
- 1 teaspoon garam masala
- Salt and black pepper to taste
- Fresh parsley chopped for garnish
- Lime wedges for serving
Instructions
- Peel and chop the onion, ginger, and garlic.
- Rinse the baby bok choy. I usually soak them in a solution of water and vinegar, then rinse them under tap water and dry them. Then, chop the bok choy so it cooks quickly. I chop off the ends/base, then chop the baby bok choy in finger-sized shreds.
- Drain and rinse the canned black beans.
- Heat the oil in a large skillet or wok over medium-high heat.
- Add the diced onion, garlic, and grated ginger. Cook for about 8 minutes, stirring frequently until the onions become soft and lightly caramelized.
- Stir in the bok choy and coriander, harissa, turmeric, tomato paste, and drained black beans and stir well. Pour in the coconut milk and water, and stir well until smooth. Let simmer about 3-5 minutes.
- Stir in the garam masala. Cook for one final minute.
- Season with salt and pepper. Make sure to taste it to see if the salt and pepper are to your preference.
- Garnish with chopped parsley and a squeeze of fresh lime juice. Serve warm with rice, naan, roti, or your favorite store-bought flatbread or pita for a quick and filling dinner.





