Wash and dry a large eggplant. Rub some oil all over and roast the eggplant directly on a gas flame. Turn every now and then until it gets roasted evenly and completely.
Once you have checked that is well roasted and completely cooked from inside, remove from heat and keep aside on a plate.
After it has cooled, remove the skin and discard. Mash the cooked eggplant well using a fork.
In a mortar pestle preferably or a small grinder, coarsely grind the garlic, ginger and green chilies into a coarse paste.
Heat a pan or a kadhai and add the oil. Add the coarse ginger garlic chili paste and saute for 2 minutes. Add the chopped onions and saute well until light golden brown on medium flame.
Now add the tomatoes, mix and cook for a few minutes until they soften and mash well. Add the chili and coriander powders and mix well again.
To this now add the mashed, roasted eggplant and give everything a good mix. Add salt to taste and on medium flame, continuously keep sautéing and stirring the eggplant mash until it all comes together and changes color. This should be done for around 6-7 minutes until the quantity reduces a bit and the bharta comes together.
Add 1 teaspoon ghee and chopped coriander leaves to the cooked bharta and remove from the flame.
Serve hot with fresh hot rotis or parathas.