Heat olive oil in a pot over medium heat. Add onion and cook until the onions start to brown, about 3 minutes.
Add garlic, celery, and jalapeño. Stir and cook for 2 minutes.
Add mushrooms and walnuts and cook for 1 minute.
Add spices (chili powder, cumin, paprika, and nutritional yeast) and stir for 1 minute.
Add tomato paste and stir for 30 seconds.
Add crushed tomatoes and water/broth. Cover, bring to a boil, then reduce heat to simmer for 30-60 minutes. Check and stir occasionally to make sure the bottom isn't burning. Add more water/broth if the chili is too thick.
During the last 10 minutes, stir in the beans, bell peppers, soy sauce, and balsamic vinegar.
Turn off heat and stir in lime/lemon juice. Taste and add salt/pepper/acid as needed.
Serve warm with bread or rice, and garnish with your favorite add-ins if desired.
Notes
1) Feel free to switch up the black beans for other types of beans/legumes like kidney beans, pinto beans, lentils, chickpeas, etc. You can also swap out a can of beans for a block (6-8 oz) of crumbled/chopped tempeh (I pulse it in a food processor for a "ground meat" type texture). GARNISHES: My favorites include cilantro, a squeeze of lime juice, vegan cheese, avocado, vegan sour cream, and diced red onion.