- Prepare the Beans: Drain and rinse the soaked beans. Set them aside.beans. 
- Sauté vegetables: In a large pot or Dutch oven, heat the olive oil over medium heat. Add the chopped onion, garlic, carrots, and celery. Sauté for about 5 minutes, until the vegetables are tender. 
- Add Tomatoes and Seasonings: Stir in the diced tomatoes, bay leaf, dried thyme, and paprika. Cook for another 2 minutes. 
- Add Broth and Beans: Pour in the vegetable or chicken broth and add the drained beans. Bring the mixture to a boil. 
- Simmer: Reduce the heat to low, cover the pot, and let the soup simmer for about 1 hour and 15 minutes, or until the beans are tender. 
- Season to Taste: Remove the bay leaf and season the soup with salt and pepper to taste. If using, add the chopped spinach or kale and cook for another 5 minutes, until the greens are wilted. 
- Finish with Lemon Juice: (Optional) Stir in the lemon juice for a burst of freshness before serving. 
- Serve: Ladle the hot soup into bowls and enjoy with crusty bread or a side salad.