You can make it with just basil leaves and just one type of grated cheese. . .the choice is yours, but this is delicious!
½ cup pine nuts (pignoli)
¾ cup extra-virgin olive oil
3 cloves garlic, peeled
3 cups packed basil leaves, about 3 large bunches
1 cup packed baby spinach, about 1 small bunch
1 cup freshly grated Parmigiano-Reggiano cheese
½ cup freshly grated Pecorino Romano cheese
Sea salt and freshly ground black pepper
1 lb spaghetti
Place pine nuts in a non-stick skillet and over medium heat, toast the nuts until golden. Do not walk away because they burn easily. Let cool.
Pulse pine nuts in a food processor until they are completely smooth. Scrape down the sides from time to time.
Add olive oil and garlic and pulse until the garlic is finely chopped.
Chop basil and spinach very roughly, then add to the processor. Pulse, stopping every few seconds to scrape down the sides of the bowl.
Scrape pesto into a bowl and add the cheeses and season to taste with salt and pepper.
Cook spaghetti in boiling salted water for 7 to 8 minutes, until al dente.
Drain spaghetti, reserving about ½ cup of the pasta water.
Pour pasta back into the pan, add some of the pesto, add some of the pasta water to slightly thin the sauce.