In a large bowl whisk together the flour, baking soda, baking powder and salt; set aside.
In large bowl with electric mixer, cream the butter and sugar together until light and fluffy.
Add the eggs, one at a time, beating until each is incorporated.
Add the peppermint extract and vanilla extract and sour cream and beat until combined.
In medium bowl, combine flour, baking soda, baking powder, and salt.
Add flour mixture to butter mixture and beat at low speed until just combined, scraping down the bowl as needed.
The dough will be a little sticky, which is fine.
Divide dough into two halves then wrap with plastic wrap.
Chill in the refrigerator overnight or for at least two hours.
After chilling, preheat the oven to 425 degrees F.
Line large baking sheets with parchment paper and set aside.
If you want to make cut out cookies:
Lightly flour the countertop and the top of the dough, and with a rolling pin, roll the dough out to ¼-inch thickness.
Using cookie cutters, cut out the cookies and place on prepared baking sheets. Bake for 7 minutes, until cookies are slightly golden around the edges.
If you want to make non cut-out cookies, roll 1 tablespoon of dough into ball, and slightly flatten. Place onto prepared baking sheets and bake 7 minutes, until cookies are slightly golden around the edges.
Immediately transfer cookies to a wire rack to cool. Cook cookies completely before frosting.
To make the frosting:
In large bowl, cream together the butter, peppermint extract and vanilla extract with electric mixer.
Slowly beat in powdered sugar and the pinch of salt.
Once smooth and creamy, add in heavy cream, 1 tablespoon at a time, then beat at medium-high speed for a minute or two until light and fluffy.
Add food coloring, if desired, and beat until combined.
Frost cooled cookies, then top with chopped candy canes or candy cane candies.
Enjoy!