Vegan shakshuka is the perfect cold weather brunch. Warm tomato and bell pepper sauce is finished with slabs of eggy tofu, baby spinach, and non-dairy feta. Scoop up every last drop with a slice of toast.
This time of year, I’m all about warm breakfasts. I want something that’s cozy, comforting, and filling. Vegan shakshuka is just the answer.
Shakshuka (pronounced shock-shoe-kah or shack-shoe-kah) is an egg dish that’s common in the Mediterranean, Middle East, and North Africa. To make standard, non-vegan shakshuka, eggs are poached in a spicy tomato and pepper sauce. It’s also known as eggs in purgatory.
Finally, shakshuka is served with bread or pita to spoon up the sauce.
Even though it has a long history, shakshuka wasn’t really on my radar until the last few years. And of course, since I’m vegan, I’d only eat shakshuka without eggs.
But apparently, we’ve reached peak shakshuka here in the U.S., because now you can even find it in the frozen section at Trader Joe’s.
And that’s where I tried it for the first time. The frozen shakshuka starter is vegan. But in the directions, they tell you to add eggs to finish it.
Instead of adding eggs, I opted for my favorite easy vegan breakfast, eggy tofu. I finished it with some non-dairy feta, spinach, and toast. It worked like a dream! (You can see a picture of my finished TJ’s version on Instagram.)
The second occasion I tried shakshuka was for my birthday this year at Rapid Creek Cidery. It’s typically not vegan. But they’ll veganize it with lentils and roasted eggplant.
The shakshuka looked really different than any other versions I’ve seen, but it was still delicious. (You can scroll through these Instagram pics to see it.)
As tempting as it is to pull out a frozen meal or drive to a restaurant, making vegan shakshuka at home doesn’t take a lot of work. The ingredients mostly consist of pantry staples.
For easy meal planning, make a batch of the tomato and pepper sauce on Sunday. Then during the week, you can warm the sauce on the stove or in the microwave.
Then it’s just a matter of browning some eggy tofu slices, garnishing them with non-dairy cheese and spinach, and putting bread into the toaster.
How do you get the tofu to be eggy?
To make the tofu eggy, use an Indian spice called kala namak. (It’s also known as black salt, even though the salt itself is pink in hue when it’s in the bag.)
It has a strong sulfurous scent that works like magic to make tofu taste like eggs.
Plus, a little goes a long way. So one bag will last for ages.
You can find out more about kala namak and where to find it in this post on eggy tofu.
How to make this brunch recipe
Start with the shakshuka sauce.
Bring a soup pot to a medium heat with a drizzle of oil. Sauté chopped onion, red bell pepper, and minced garlic.
Once the onion is translucent and fragrant, add a can of diced fire roasted tomatoes with their juices.
The Trader Joe’s diced canned tomatoes includes green chilies as well. It adds a nice little kick of heat. If your canned tomatoes don’t contain chilies but you’d like some heat, add a dash of cayenne.
Season the tomatoes with dried oregano, dried basil, granulated onion, and a pinch of salt. Turn up the heat, and bring the tomatoes to a simmer.
FYI: The most common shakshuka spices are cumin and paprika. However, while I was making it, I found that I preferred to lean in a more Italian direction with basil and oregano.
Once the sauce starts to bubble, turn the heat to low, and allow the sauce to cook for about ten minutes, stirring occasionally.
Now it’s time to break up the tomatoes and bell peppers, so that it’s more like a stew.
I like to use my immersion blender for this.
Break it up about 75%. You don’t want it completely smooth like a bisque. It should still have body and texture.
If you don’t have an immersion blender or would rather skip this part, just use your spoon as you’re cooking to break up the tomato and bell pepper pieces as they soften.
Cook for about ten more minutes on low, so that the flavors meld, the garlic mellows, and the sauce thickens.
During the last ten minutes of cooking the tomato sauce, turn your attention to the eggy tofu.
For vegan shakshuka, I recommend using super firm tofu in vacuum packaging. It can really hold up to slicing and sauce with its denser texture.
(Super firm tofu is one of my favorite vegan Trader Joe’s products. It’s also sold by Wildwood at natural grocery stores.)
But if you don’t have access to vacuum packaged tofu, you can use water-packed instead. You’ll just want to press it first.
(Don’t know how to press tofu? <– Find out here.)
How to cut the tofu – circles or rectangles?
You have a choice here. You can cut your tofu into simple rectangular slices, which is the easiest method.
It means you won’t have any excess scraps of tofu. Cut the tofu into 8 slices that are ¼ – ½ inch thick.
Or you can cut the tofu into circles, which is more reminiscent of the eggs in shakshuka.
If you want to cut the tofu into circles, slice the tofu across the widest part. That way you’ll have the largest surface area for cutting circles with a cookie cutter or biscuit cutter.
So that the tofu is sturdy enough for cutting into circles, I recommend slicing it in ½ inch slices. Then cut it into 8 circles.
(You will most likely have tofu left over from the 16 ounces I call for in the recipe. However, I wanted to allow for those extra pieces you will cut off when making circles for the dish. Use any scraps in other dishes, like vegan tofu scramble.)
Brown the tofu slices in a skillet
Bring a non-stick skillet to a medium heat with oil. Put the tofu slices into the skillet. Brown each side for a couple of minutes each. After one side has browned, add a sprinkling of granulated onion, nutritional yeast flakes, and kala namak.
Flip the tofu slices. Then sprinkle on more of each of the seasonings. Flip one more time to seal in the seasonings.
Divide the tomato sauce between four shallow bowls or mini skillets. Top each one with two slices of eggy tofu, torn pieces of baby spinach, and crumbled vegan feta cheese (homemade or store-bought).
Serve with toast that has been buttered with non-dairy butter. Then scoop the shakshuka onto bread while you eat.
Make it your own
There are so many easy swaps you can do to make this tasty shakshuka your own.
Here are some variations:
- Instead of tofu, finish your tomato & bell pepper sauce with rounds of eggplant parmesan (with or without the marinara on top).
- For another tofu-free option, use browned slices of polenta instead of eggs. You can simply cut & fry from a round chub of pre-made polenta. Or you can make your own from scratch, like I do in my polenta stacks.
- Here’s one more option that isn’t tofu. Top the tomato & pepper sauce with a hash brown patty that’s been cooked on the stove or in the air fryer.
- Don’t have access to vegan feta and don’t feel like making it? Either omit it altogether or finish the dish with slices of avocado.
- Instead of baby spinach, garnish with fresh parsley, cilantro, or fresh basil leaves.
- 2 teaspoons organic canola oil divided, or other high heat, neutral-flavored oil
- 1/2 cup chopped yellow onion
- 1/2 cup chopped red bell pepper
- 2 cloves garlic minced
- 14.5 ounces diced & fire roasted tomatoes* including juices from can
- 1/2 teaspoon dried oregano
- 1/2 teaspoon dried basil
- 1 1/2 teaspoon granulated onion divided
- Pinch of salt
- 16 ounces super firm tofu in vacuum packaging**
- 1 teaspoon nutritional yeast flakes
- 1 teaspoon kala namak
- Handful baby spinach torn into smaller pieces
- 4 ounces vegan feta cheese Or use sliced avocado
- Start by bringing a medium-sized pot to a medium heat with one teaspoon of oil. Add onion, red bell peppers, and minced garlic to the pot. Saute several minutes, until the onions are translucent and fragrant.
- Add the diced and fire roasted tomatoes to the pot with their juices. Season with 1/2 teaspoon dried oregano, 1/2 teaspoon dried basil, 1/2 teaspoon granulated onion, and a pinch of salt. (You'll use the remaining teaspoon of granulated onion later in the recipe.) Turn up the heat and bring it to a simmer. Then turn the heat to low, and allow the sauce to cook for about ten minutes, stirring occasionally.
- After the sauce has started to break down a little and become stew-like, use an immersion blender to further break down the tomatoes and peppers. Don't blend it completely smooth. Some chunks are good. Aim for about 75% smooth. If you don't have an immersion blender, simply use your spoon to break up the tomatoes and peppers a little as they soften.
- Cook for about ten more minutes, allowing the flavors to combine, the garlic to mellow, and the sauce to thicken.
- During the last ten minutes of the tomato sauce's cooking time, make the eggy tofu. Cut the tofu into slices. If you don't want any scraps to go to waste, simply slice the tofu into rectangular slices. The slices should be 1/4 to 1/2 inch thick. Cut 8 slices of tofu.If you want round tofu slices that emulate eggs, you will need to use a biscuit cutter or cookie cutter on the tofu. I recommend cutting the tofu along the widest part of the rectangle, so that you have as big of pieces as possible from which to cut your circles. So that the circles are as sturdy as possible, cut them into 1/2 inch thick slices. Then use a biscuit cutter or cookie cutter to cut 8 circles.
- Bring a non-stick skillet to a medium heat along with the remaining 1 teaspoon of oil. Put the tofu slices onto the skillet. Brown each side for a couple of minutes each. After one side has browned, add a sprinkling of granulated onion, nutritional yeast flakes, and kala namak. Flip the tofu slices. Then sprinkle more granulated onion, nutritional yeast flakes, and kala namak on the other side. Flip one more time to seal in the spices. (You'll need about 1/8 teaspoon of each of the spices on each tofu slab, but don't worry too much about being precise.)
- Divide the tomato sauce between four shallow bowls or mini skillets. Top each one with two slices of eggy tofu. Finish each one with a few torn pieces of baby spinach and vegan feta crumbles. Serve with toast.