Trim off and discard the ends of the eggplants; large dice the eggplants into ¾-inch cubes. Transfer to a bowl.
Preheat a sauté pan over medium heat.
While the pan heats up, trim off and discard the ends of the onion and remove the outer layer; small dice the onion into ¼-inch pieces.
1 medium yellow onion
Once the pan is hot, add olive oil and swirl to coat the bottom.
2 tbsp extra virgin olive oil
Add the onion to the pan; cook, stirring frequently, until slightly softened, 3 to 4 minutes.
While the onion cooks, trim off and discard the root ends of the garlic; peel and mince or press the garlic.
2 cloves garlic
Add the minced garlic, paprika, cumin, and cayenne pepper to the pan; cook, stirring, until fragrant, 15 to 30 seconds.
2 tsp paprika
1 tsp cumin
⅛ tsp cayenne pepper
Add the eggplant to the pan and season with salt and pepper; cook, stirring occasionally, until softened, 6 to 8 minutes.
1 tsp salt
½ tsp black pepper
Add the tomatoes to the pan and stir to combine; simmer for 5 to 6 minutes.
2 (14.5 oz) cans diced tomatoes
While the tomatoes simmer, using a knife, shave the cilantro leaves off the stems at a downward angle, working away from your body; discard the stems and finely chop the leaves.
Stir about ¾ of the cilantro into the tomato mixture (save the rest for garnishing); stir to combine.
Break the eggs into the saucepan.
8 eggs
Season the eggs with salt and pepper.
½ tsp salt
¼ tsp black pepper
Reduce the heat to low and cover the pan; cook until the egg whites are set and the yolks are still runny, 5 to 7 minutes.
Place the feta in a small bowl.
1 (4 oz) pkg crumbled feta cheese
Uncover the pan and garnish the shakshuka with feta and the remaining cilantro.
To serve, divide the shakshuka between plates. Enjoy!