Prepare the pan: Line an 8x8-inch baking pan with parchment paper, leaving an overhang on two sides for easy removal.
Prepare the dates: If your dates are fresh (soft and sticky) they're ready to use. If they feel dry or firm, soak them in warm water for 10 minutes Start Timer. Drain well, and pat dry before using.
16 oz. soft Medjool dates
Make the brownie mixture: Add the walnuts, cocoa powder, espresso powder (if using), and salt to the bowl of a large food processor. Process until the walnuts are finely ground, resembling coarse sand.
2½ cups raw walnuts, 3/4 cup unsweetened cocoa powder, 1 tsp. espresso powder, 3/4 tsp. kosher salt
Add wet ingredients: Add the dates, peanut butter, melted coconut oil, and vanilla. Process for 1-2 minutes Start Timer, scraping down the sides as needed, until the mixture comes together and resembles thick cookie dough. The mixture should easily hold together when pressed between your fingers. If it seems too dry, add 1 teaspoon of water (or more melted coconut oil) at a time until it comes together.
1/4 cup creamy peanut butter, 2 Tbsp. melted coconut oil, 1 tsp. vanilla extract
Press into the pan: Transfer the mixture to the prepared baking pan. Using clean hands or the bottom of a measuring cup, press firmly into an even layer. Refrigerate while you prepare the frosting.
Make the frosting: In a medium bowl, combine all frosting ingredients. Microwave for just 5-10 seconds to help everything combine and whisk well until smooth and glossy.
1/3 cup unsweetened cocoa powder, 1/4 cup creamy peanut butter, 2 Tbsp. honey or pure maple syrup, 2 Tbsp. melted coconut oil, 1/2 tsp. vanilla extract, Pinch kosher salt
Frost: Spread the frosting evenly over the brownie layer.
Chill: Refrigerate for at least 2 hours, or until firm. Sprinkle with flaky sea salt on top. Start Timer
Slice and serve: Lift the bars from the pan using the parchment overhang. Slice into 16 squares with a sharp knife, wiping the blade clean between cuts for neat edges.