Bring a pot of water to a rolling boil. Meanwhile, prepare a mixing bowl with some ice cubes. Add a cup of broccoli florets into the water and blanch them for 30 seconds. Then transfer immediately to the mixing bowl with ice cubes (or run under ice cold water) to stop cooking. Note: If you're using a full head of broccoli, triple the other ingredients (medium head of broccoli yields ~3 cups of broccoli florets!)
Add ¼ cup of pine nuts to a skillet and toast them over medium flame for about 1 to 2 minutes until it smells nutty (it'll brown slightly but make sure to not burn it!)
Add a cup of blanched broccoli florets, a cup of fresh basil leaves, ½ cup of toasted pine nuts, and 2 to 3 garlic cloves to a food processor and pulse until it forms a coarse mixture. Check notes for nut-free options!
Add ¼ cup of olive oil slowly through the chute of the food processor to emulsify the pesto. If your food processor doesn't have a chute, add the olive oil 1 tablespoon at a time until it reaches desired consistency. Stir in a teaspoon of salt and ½ teaspoon of black pepper and your pesto is ready! You can also garnish with some fresh lemon juice (optional!)
The recipe as written is vegan. If you want more umami flavors, you can add vegetarian parmesan or nutritional yeast.
You can use frozen broccoli - if you use that, no need to blanch. Just thaw to room temperature before pulsing.
I like pine nuts because it brings a really traditional pesto flavor to this dish. You can substitute with walnuts, cashew nuts, or almonds depending on what you have on hand. To make it nut-free, swap with sunflower or pumpkin seeds instead.
Another nut-free option is to roast the broccoli for 30 minutes at 400F before you pulse the pesto. You can also do this in addition to the pine nuts if you want! Adds a really nice umami flavor.
I stuck with the traditional pesto route here, but I've used parsley, arugula, pea shoots, and many other fresh and light leafy greens in this recipe (occasionally even kale!)