Preheat oven to 350°F/175°C. Line a muffin pan with 12 cupcake liners. Set aside.
Make Cupcakes. In a large bowl, sift together the dry ingredients: flour, sugar, cocoa powder, baking soda, baking powder and salt. Set aside.
In a small cup mix instant espresso powder with hot water and stir it up until completely dissolved. Set aside.
In a small bowl microwave butter for 15-20 seconds until completely melted and cool. In a medium bowl, beat together eggs, oi, melted butter and vanilla until smooth. Add buttermilk and mixed until combined. With a mixer on low speed, slowly add the wet mixture into the dry mixture. Then add hot coffee and stir to combine. Keep whisking until the batter is fully combined and smooth. Make sure to not over mix.
Scoop out the batter into prepared cupcake liners using the ice cream scoop, filling about 3/4 cup (1 scoop). Bake for 18-25 minutes or until a toothpick inserted into the center of a muffin comes out clean. Remove from the oven. Allow to cool for 10 minutes in the pan, then transfer to a wire rack to cool completely.
Make Frosting. In a large mixing bowl, using a mixer fitted with the whisk attachment, beat heavy cream, sifted cocoa powder, instant espresso powder, sugar, and vanilla on medium-low speed for 30 seconds. This would help incorporate all ingredients. Increase speed to high and beat until the cream reaches soft peaks or desired thickness is reached. Do not over whip or frosting will start to be grainy.
Once cupcakes are completely cool, frost on top of each cupcake using a piping bag and decorating tip (I use Wilton 6B tip). Store leftovers at room temperature for up to 2 days or in the refrigerator for up to 5 days. Bring back to room temperature before serving.