Roast the eggplants over open flames on the stovetop or on the grill until all sides are completely blackened, and the center begins to soften about 15-20 minutes.
Alternatively, they can be broiled or roasted in a high-temperature oven, though they will not have the smokey flavor that is typically associated with this dish. Be sure to poke the eggplants with a fork so that the steam has a way to exit and prevent them from bursting.
Once cooled to room temperature, remove the charred skin and roughly chop the eggplants. Set aside.
In the meantime, saute the diced onions in olive oil in a large skillet over medium-low heat for 20 minutes until the onions are caramelized and golden.
Add garlic, salt, pepper, and turmeric and saute for an additional 5 minutes.
Add the chopped eggplants and tomatoes, stir, cover, and cook for 15-20 minutes over low heat.
Using a spoon, pull back some of the eggplants to make space to crack an egg in. Continue until all the eggs have been cracked into the pan.
Cover and cook for about 5 minutes over low heat. The eggs should be cooked, but somewhat soft and runny.
Alternatively, the eggs can be mixed into the eggplant mixture to create a uniform consistency.
Add chopped fresh basil on top and serve with your favorite Persian flatbread.