To a mixing bowl, add flour, semolina, salt and hot ghee. (Heat ghee in a kadai and pour it here.) Mix everything well with a spoon first and then with fingers.
Pour warm water little by little to make a stiff and non-sticky dough. Start with ¼ cup water and add more as required.
Cover and set aside till the filling is ready.
Heat a pan with 1 teaspoon ghee and fry cashews until light golden.
Add coconut and saute until a nice aroma comes out. This takes just 1 to 2 mins. Add cardamom powder and nutmeg (optional). If using poppy seeds you can add them now and saute for just 1 minute until they turn crunchy.
Turn off and transfer this to a plate/ bowl to cool. Meanwhile add sugar to a grinder and make a fine powder.
When the coconut cools down completely, add the sugar and mix well. For a less sweeter karanji, you may start with lesser sugar, taste test and add more as needed.
Divide the dough to 8 equal parts and keep them covered. Begin to roll the balls gently to small puris of about 4 to 5 inches. It should be neither too thick not too thin.
If you do not get round shapes, use a round cookie cutter, pastry cutter or a lid of a steel jar and cut to round shaped puris.
Add 1½ to 2 tbsps. mixture to these center of the puri. Dip your finger in a bowl of water and smear the water around the edge of the puri.
Join the edges to make a semi circle shaped karanji. Make sure you press down well and the edges stick up well.
With the help of a fork make light incisions to get a design.
Heat oil in a kadai for deep frying on a medium flame.
To test if it is hot enough, drop a small portion of the dough to the oil. If the oil is ready for frying, the dough will sizzle and rise up to the surface. If it is not ready it will sink. Also the dough should not brown which means it is too hot.
When the oil is just right - medium hot, add the karanji one after the other. Do not disturb them for 2 minutes.
When they firm up, turn them to the other side and fry until crisp and golden. Remember that karanji should be fried on a medium heat else they won't turn crispy.
Cool karanji completely and store in a airtight jar.