Heat oil in a deep non-stick pan and add in onion, ginger and garlic, and fry for 2-3 minutes on medium-high heat till it starts to brown a bit. Add in spices, tomato paste and salt, and fry for another minute mixing it all well.
Add in tomatoes and potatoes, and cook covered for a few minutes stirring occasionally till the potatoes start to soften. Slowly stir in the yogurt and cook for another minute making sure to mix everything well.
Add in a splash of water depending on the consistency of the curry you prefer. Once the curry starts to come to a boil, slowly add in the boiled eggs, toss gently and cook covered on low heat for another 2-3 minutes.
Garnish with fresh chopped coriander leaves and serve piping hot with a side of rotis or rice, and a salad.