Start by rinsing your soaked beans and setting them aside.
Heat a large pot over medium heat and add the olive oil, allowing it to warm up and shimmer.
Drop in the chopped onion and sauté until it becomes translucent and fragrant, about 5 minutes, with a gentle sizzle and mild browning edges.
Add the minced garlic to the pot and cook for another 30 seconds until fragrant, releasing a warm, savory aroma.
Pour in the diced tomatoes along with their juices, stirring to combine with the sautéed aromatics, while the mixture bubbles and thickens slightly.
Stir in the rinsed beans, vegetable broth, cumin, chili powder, salt, and black pepper, then bring the mixture to a gentle boil.
Reduce the heat to low, cover the pot, and let everything simmer for about 25 minutes, allowing the beans to become tender and the flavors to meld, with occasional stirrings.
Remove the lid and taste the chili, adjusting the seasoning with more salt or chili powder if desired, until it’s flavorful and just slightly spicy.
Serve the chili hot, garnished with your favorite toppings like cheese, sour cream, or fresh herbs for added richness.