In a heavy bottomed pot or dutch oven, melt vegan butter over medium heat.
Add in all the sliced onions, and stir very well until they are all coated with the vegan butter.
Turn heat to medium low and let cook for 5 minutes. Stir again and cook for another 5 minutes. Then, sprinkle the salt across the onions and stir again.
Let the onions cook for another 30-60 minutes, stirring about every 4-5 minutes, careful to not burn the onions. You want them to brown and become sticky, but not burn. *If you notice they seem like they are burning, turn your heat lower and add more vegan butter or a splash of vegetable stock if needed. While this is cooking, in another pot or large bowl, combine the not beef bouillon cubes and hot water together according to package. *Skip this step if just using pre-made stock.
Once your onions have caramelized, add the flour and stir to coat. Let cook for another 2 minutes.
Pour in 1/2 cup of the stock and scrap up any bits that are sticking to the bottom of the pan.
Add in the remaining stock, wine, and thyme sprigs. Stir together again. Let simmer for 30 minutes.
While simmering, preheat oven to 325 degrees F. Add bread slices to a baking sheet and brush both sides with oil. Bake for 10-15 on each side or until golden brown.
Turn oven temperature up to 350 degrees F. Add salt and pepper to soup if desired.
Into oven safe bowls, add one slice of bread and sprinkle 2 tbsp vegan parmesan over bread. Then ladle 2 cups of soup into the bowl. Add another slice of bread and 1/4 of the cheese.
Place soup dishes into the oven for about 30 minutes. After, if desired, carefully place until a broiler to brown the cheese. *Make sure to watch so it doesn't burn!