Preheat the oven to 175 degrees Celsius (350 degrees Fahrenheit)
In a bowl combine all of the ingredients for the meatballs. Using your hands work the ingredients together until they are well combined. Roll the mixture into balls approximately the size of golf balls and place on a parchment paper lined baking sheet.
Bake the meatballs in the oven for approximately 25 minutes, flipping them half way through cooking to ensure they brown evenly.
While the meatballs are baking prepare the pesto by combining all of the pesto ingredients in a food processor and pulsing until the mixture is broken down into a chunky consistency. I like to leave the almonds in little bits so there is a bit of texture.
In a skillet sauté the diced onion in olive oil for 3-4 minutes until it begins to soften. Add in the cherry tomatoes, cover with a lid and allow to cook for 10 minutes until they have completely softened and all of the moisture has been released from them.
Once the tomatoes are soft and "wilted" looking, stir in the pesto and then add the meatballs to the pan. Stir so that the meatballs are well coated in the pesto before serving topped with shredded basil and pine nuts.