Heat the oven to 200°C/400°F. Heat the oil over a medium heat and add the aubergine. Cook for 5 minutes then add the onion and garlic and cook for another 5-10 minutes until everything is softened.
Place the mixture in a food processor and pulse until mostly blended then tip out into a large bowl. Add the breadcrumbs, parmesan, basil, parsley, oregano and a sprinkle of salt and pepper then mix together until everything is combined. Add the egg and mix together again. Shape into small balls, I got about 20 out of the mixture and place on a greaseproof paper lined baking sheet. Place in the oven and cook for 20 minutes.
While the meatballs are cooking heat the olive oil over a medium heat and add the onion. Cook for five minutes then add the garlic and cook for another couple of minutes. Add the fish sauce (leave out for vegetarian version), red wine, tomatoes, pasta water, oregano, seasonings and tomato puree. Bring to a simmer and cook for 10 minutes.
Add the cooked spaghetti and tomato sauce to a bowl and toss until the pasta is coated. Serve topped with the vegetarian meatballs and grated parmesan.
Nutrition information is an estimate and will vary depending on the exact ingredients used.