Sauté the aromatics. Warm the olive oil in a large pot over medium heat.
Add the onion, carrots, and celery with a pinch of salt. Cook 6–8 minutes, stirring occasionally, until the vegetables soften.
Add garlic and tomato paste. Stir in the garlic and cook 30 seconds, then add the tomato paste. Cook 1–2 minutes until the paste darkens slightly and smells sweet.
Build the base. Pour in the crushed tomatoes and vegetable broth.
Add the thyme, oregano, red pepper flakes (if using), bay leaf, and the Parmesan rind if you’re using one. Stir to combine.
Simmer with the beans. Add the cannellini beans. Bring the pot to a gentle boil, then reduce to a steady simmer.
Cook 10–15 minutes to let the flavors meld.
Add the kale. Stir in the chopped kale. Simmer 5–8 minutes, until the kale is tender but still bright. If the stew gets too thick, add a splash of broth or water.
Brighten and season. Remove the bay leaf (and Parmesan rind).
Add the zest of half a lemon and squeeze in 1–2 tablespoons of lemon juice. Taste and season with salt and black pepper.
Finish and serve. Ladle into bowls, drizzle with a little olive oil, and top with parsley. Serve with crusty bread for dipping.