Heat the olive oil in a large saucepan on low heat and saute chopped garlic and onions.
Once onions are translucent, add chopped tomatoes, tomato puree, and about half a cup of water. Stir well.
Add chopped carrots, basil, salt, pepper. Leave on low heat and stir continuously for about 20 minutes or so. If you have the time, I recommend leaving it to simmer for 45 minutes before eating.
To make the meatballs, preheat your oven to 180 degrees Celsius and line a baking sheet with parchment paper.
Finely chop the onion, garlic and parsley.
In a large mixing bowl, mix minced meat, egg and breadcrumbs.
Add in the chopped onion, garlic, parsley and the grated parmesan cheese. Add the salt and pepper to taste. Mix well.
Using your hands, roll the meat mixture into evenly sized meatballs.
Transfer the balls onto the baking tray and bake in the oven for 30 minutes.