1. Preheat the oven to 180°C (350°F) and line a 12-cup muffin tin with paper liners.
Spread the pistachios on a baking sheet and bake at 180°C for 10 minutes, until lightly fragrant.
2. Let them cool completely, then grind them until they form a fine powder. Be careful not to turn them into a paste.
3. In one bowl, mix the flour, ground pistachios, baking powder, and salt.
In another bowl or in the mixer, beat the eggs with the sugar for 3-4 minutes until fluffy.
4. Add the oil, yogurt, milk, rose water, and vanilla.
Reduce the speed and gradually add the flour mixture.
5. Divide the batter into the cupcake liners, filling them up to 2/3 full.
Bake in the preheated oven for 25 minutes, or until a toothpick inserted into the center comes out clean.
Let them cool completely before decorating.
For the Buttercream:
1. Place the butter in the mixer bowl and beat with the whisk attachment until pale, about 10 minutes. Add half of the powdered sugar and beat for 5 minutes.
2. Then, add the remaining powdered sugar and beat for another 5 minutes.
Add the vanilla and the pistachio paste. Beat well.
3. Transfer to a piping bag and decorate the cupcakes. If you wish, insert the tip of the piping bag inside the cupcakes to add cream filling as well. Sprinkle with coarsely ground pistachios.