Prepare the Broccoli: Cut the florets from a head of broccoli and chop the larger florets into smaller pieces to ensure they are similar in size. Rinse the broccoli under water, pat dry, and then finely chop in a food processor or by hand.
Sauté the Broccoli: Heat a large fry pan with medium heat and add 2 tbsp of extra virgin olive oil. Add the chopped broccoli and garlic, sautéing for 2-3 minutes until lightly sautéed. Remove from heat and let cool.
Make Meatball Mixture: To the cooled broccoli, add bread crumbs, one egg, shallot, parsley, salt, and pepper. Mix well, then add the second egg and mix until you have a paste-like texture.
Shape and Cook Meatballs: Shape the mixture into balls about the size of a golf ball. Heat a pan with 1/4 cup of olive oil and fry the meatballs for 8-10 minutes until golden. Remove and set aside.
Prepare the Onion Sauce: In the same pan, add the onion and garlic, sautéing until translucent. Add flour and cook for 1-2 minutes. Add wine (or broth), thyme, and simmer for a few minutes before adding the vegetable broth. Cook until slightly creamy.
Combine and Serve: Season the sauce with salt and pepper, then add the meatballs back into the pan, coating them in the sauce. Simmer for 2-3 minutes until heated through. Serve with fresh parsley on top.