Sweat the eggplant: Place the cubed eggplant in a colander set over a bowl. Sprinkle with the ½ teaspoon salt and toss with your hands. Let it sit for 30 minutes to sweat. (No need to wipe off the water that beads on the surface.)
Make the tomato puree: While the eggplant sweats, place the chopped tomatoes in a blender or food processor. Blitz until smooth. (Skip this step if using canned crushed tomatoes or passata.)
Cook the eggplant: Heat 2 tablespoons of olive oil in a large skillet over medium high heat. Add the eggplant and cook for 4-5 minutes, stirring regularly, until golden on the surface but still somewhat firm and raw inside. Transfer to a large pot or Dutch oven.
Cook the onion and garlic: In the same skillet, add 1 more tablespoon of olive oil. Add the chopped onion and garlic with a pinch of the salt. Cook for 3 minutes until the onion is soft with a hint of golden on the edges. Transfer to the pot with the eggplant.
Cook the bell peppers: Add another 1 tablespoon of olive oil to the skillet. Cook the bell peppers with a pinch of salt for 3 minutes. They should still be firm inside (they won't get much color). Transfer to the pot.
Cook the zucchini: Add the final 1 tablespoon of olive oil to the skillet. Cook the zucchini with a pinch of salt for 3 minutes. Keep them firm (raw inside). Transfer to the pot.
Combine and braise: Turn the heat under the large pot to medium high. Add the tomato puree, fresh thyme, black olives, remaining salt (about ½ teaspoon), and the pepper. Stir everything together.
Simmer: Once the mixture is hot and bubbling, reduce the heat to low. Cook for 20-25 minutes with the pot lid off, stirring every now and then, until all the vegetables are cooked through and the liquid has reduced. The mixture should be thick enough to pile on a plate (not watery), but still moist and juicy.
Finish and serve: Taste and add more salt if needed. Stir through the fresh basil. Serve immediately, drizzled with extra virgin olive oil and a sprinkle of extra basil on top.