In a skillet, heat the olive oil over medium heat. Add the yellow onion and quartered cremini mushrooms. Sauté for about 5-7 minutes until the onions become translucent and the mushrooms are tender. Remove from heat and let cool slightly.
In your food processor, combine the sautéed onion and mushrooms with the soaked sunflower seeds, grated tofu, drained garbanzo beans, nutritional yeast, tomato paste, garlic powder, Italian seasoning, smoked paprika, salt, black pepper, and optional ingredients (red pepper flakes, fennel seeds). Pulse until the mixture is well combined but still has some texture—about 10-15 pulses should do.
Transfer the mixture to a large bowl and stir in the rolled oats and ground flaxseed. Mix well until everything is evenly incorporated. If the mixture feels too wet, add a bit more oats until it holds together well.
Using your hands, form the mixture into small balls, about 1 to 1.5 inches in diameter. Place them on a baking sheet lined with parchment paper or directly onto a greased skillet.
You can either bake or fry the meatballs. To bake, preheat your oven to 375°F (190°C) and bake for 25-30 minutes, flipping halfway through until golden brown. For frying, heat a little oil in your skillet over medium heat and cook the meatballs for about 5 minutes on each side until they are crispy and browned all around.
Once cooked, let the meatballs cool slightly before serving. Pair them with your favorite sauce and pasta, or enjoy them in a sub with fresh veggies. The choices are endless!