Heat the ghee in a non-stick pan over medium heat until it melts.
Gradually add the flour to the melted ghee, stirring constantly to prevent lumps. Cook for about 5-7 minutes, stirring continuously until the mixture turns a golden brown color and has a nutty aroma.
In a separate pot, combine the sugar and water. Bring to a boil and then simmer until the sugar is completely dissolved.
Slowly pour the sugar syrup into the flour and ghee mixture, stirring continuously to combine. Continue to cook and stir until the mixture thickens and starts to pull away from the sides of the pan, about 10-15 minutes.
Stir in the ground cardamom, cinnamon, and any optional rose water or vanilla extract. If using, mix in the chopped nuts.
Transfer the mixture to a greased dish or tray and spread it evenly. Allow it to cool and set for about 1-2 hours. Once set, cut into squares or diamond shapes.
Enjoy your meal!