Preheat oven to 375°F. Lightly grease a baking sheet with cooking spray, or line pan with parchment paper.
Place 1 tablespoon of olive oil in a large skillet over medium-high heat. Once hot, add cubed eggplant and water. Season with salt and pepper. Stir and cook for about 10 minutes until eggplant is softened and starting to caramelize.
Push eggplant to one side of the skillet. Add remaining olive oil to the pan and place shallots and garlic in the pan. Cook until softened, about 3-4 minutes.
Transfer eggplant, shallots and garlic to a food processor.
Add the beans, parsley, basil and oregano, process until combined. Mixture should be finely chopped but not pureed. Check for seasoning and add more salt and pepper, if needed.
Transfer the mixture to a large bowl. Add the breadcrumbs and cheese (if using). Stir together with a spatula until well combined.
Using a medium cookie scoop (about 2 tablespoons), form mixture into balls and place on the prepared baking sheet.
Bake for 25-30 minutes, until browned around the edges.
If desired, add 2 cups marinara sauce to a skillet and heat through. Place cooked meatballs in the sauce and toss to coat before serving over noodles of choice.
Video
Notes
Makes 28-30 meatballs
Make gluten-free meatballs by substituting gluten-free breadcrumbs. Rolled oats are a good option, too.
These eggplant meatballs are vegan if you omit the cheese or substitute non-dairy cheese.
Make Ahead Tip: Prepare the meatball mixture, cover tightly, and refrigerate, for up to one day. Once you're ready, form the balls and bake as directed. Add a couple minutes to the baking time.