In a heavy-bottomed pot or Dutch oven, heat oil over medium-high heat. Optionally, add red pepper flakes and bloom for about 30 seconds.
Add onion, garlic, and ginger and sauté for about 10 minutes, stirring often, until the mixture takes on a golden brown color. If it starts to stick to the pan too much, add a splash of water as needed to deglaze, scraping any color off the pan.
Once the onion mixture is evenly golden brown, add in the curry powder and stir to coat. Continue to cook for 1-2 minutes, stirring regularly, to lightly toast the spices.
Deglaze the pan with the coconut milk and use your wooden spoon to scrape any fond off the bottom of the pan.
Add in the sweet potato, carrot, bell pepper, and butter beans and stir to evenly distribute. Fill the coconut milk can up halfway with water and add that to the pot as well so there is more liquid to cover the veggies.
Bring this mixture up to a boil and then reduce heat to low or medium-low to establish a gentle simmer. Simmer this mixture, uncovered, for 20-30 minutes, stirring it occasionally to ensure nothing sticks to the bottom of the pot.
The stew can be eaten as soon as the sweet potatoes are tender, but I like to keep simmering it for up to 30 minutes to allow it to become very thick and creamy. If you prefer a thinner consistency, feel free to simmer for just 20 minutes!
Give the curry a taste and season generously with salt to preference. Some curry powders already contain salt, but if you are using a salt-free curry powder you will likely have to add at least 1 teaspoon of salt, and maybe more.