This post may contain affiliate links. Please read our disclosure policy.
This 35-minute Indonesian curry features chewy tofu and green beans, simmered in a velvety-smooth coconut sauce infused with lemongrass, galangal, and kaffir lime leaves for a bright, lemony flavor. Garnish with chopped cilantro and fried shallots, and serve with rice or crusty bread!

We are huge curry lovers here at the Full of Plants HQ, so anytime I get the chance to try a new one, I’m all in! Recently, I dove into the world of Indonesian curries, and let me tell you: WOW. They taste so different from the ones I’m used to, but in the best possible way.
Luckily, I got the chance to learn how to make one of them the traditional way, thanks to an Indonesian cook I met at my local Asian store. We started chatting about food (surprised?), and before I knew it, I was getting a recipe + tips from someone who grew up with these flavors. How awesome!
Unlike some other curry recipes, this one relies entirely on fresh aromatics. No store-bought curry paste or spice blend is needed. You make your own curry paste in just a few minutes using a blender. Then, cook it with creamy coconut milk, add the tofu and green beans, and let it simmer for a few minutes. Super simple. Insanely delicious!
Bonus point: Your kitchen will be filled with a fresh and citrusy scent as the curry simmers!
🌶️ A quick warning: Indonesian curries are usually on the spicy side, and this one is no exception! I would personally give it an 8/10 on the heat scale. So, if you cannot handle too much heat, feel free to use just 1/4 or 1/2 of a chili.
😍 Why You Should Try It
Fresh, fragrant flavors.
While you might expect this curry to be loaded with dried spices like many Asian curries, it’s actually pretty light on them, relying only on a pinch of ground coriander and cumin seeds.
Instead, it uses fresh aromatics like lemongrass stalks, kaffir lime leaves, and galangal, which give it a bright, citrusy freshness. If you’ve ever tried Tom Yum, this curry has a similar vibe!
Harveen, a reader, said: “This recipe is amazing!! I recently had a delicious vegan curry at my favourite Indonesian restaurant, and I was dying to have it again – this recipe nailed it! Thank you so much!! ★★★★★”
Made in one pot.
Well, almost. The curry itself is made in one pot. You will just need to blend the aromatics into a paste (which is a 5-minute step), so it’s essentially a one-pot dish with the addition of a blender. You’ll need roughly 35 minutes from start to finish to make this curry!
Easily customizable.
You don’t have to stick to just green beans and tofu! This curry is versatile, as you can use the base curry sauce and swap in whatever add-ins you like. Not into tofu? Try tempeh or vegan chicken! Not a fan of green beans? Go with spinach, pak choy, or kale instead!
📘 What Is Indonesian Curry
“Gulai sayur,” which translates to “vegetable curry,” is an Indonesian dish consisting of vegetables simmered in a spicy coconut milk sauce infused with various aromatic ingredients.
In contrast to curries from different countries, such as Vietnamese curry, which often utilize either spice blends or pre-made curry pastes, Indonesian curries typically begin with fresh aromatics that are processed into a paste. Those aromatics often include garlic, shallots, chili, fresh turmeric, and galangal.
🫛 What You’ll Need
Below are a few notes and substitutions for the ingredients you will need.

Shallots and garlic
For a natural sweetness and garlicky aroma. Feel free to replace the shallots with one onion.
Fresh turmeric
Turmeric, in its fresh form, resembles tiny roots, approximately 2-3 inches (5-8 cm) long. It has a light brown skin and a deep orange flesh. In this curry, it adds a bright orange color and a subtly bitter, earthy aroma.
Chili
To spice it up, you will need one Thai chili, also known as Bird’s eye chili.
Substitute: You can replace the chili with 1 tablespoon of sriracha. It’s not the same, but it still works!
Galangal
Not to be confused with ginger, galangal has a more peppery and citrusy flavor. To me, it has a more complex scent as well.
Since galangal has a dense and tough flesh, it cannot be grated like ginger. Instead, you will have to cut it into slices and simmer it with the curry. Then, remove it and discard it.
Kaffir lime leaves
Lime leaves, sometimes labeled as combava leaves or makrut lime leaves, add freshness and a lemony note to the curry sauce.
Where to buy: You can find kaffir lime leaves in the frozen section of well-stocked Asian grocery stores.
Lemongrass
Use one whole fresh lemongrass stalk, slice it in half crosswise and slightly crush it with a pestle to release its flavors.
Spices
Ground coriander, turmeric, and toasted cumin seeds add depth to the sauce.
Although you can use regular cumin seeds, toasting them helps release their natural oil, allowing the seeds to develop more complex flavors. They are slightly smoky and have a more intense flavor.
How to toast cumin seeds: Heat a light-bottomed pan or skillet over medium heat. Once hot, add the cumin seeds and spread them into an even layer. Sauté the seeds for about 1 minute, shaking the pan regularly to ensure they brown evenly. That’s it!
Coconut milk
Coconut milk makes the base of the sauce, giving it a rich and nutty flavor. Since this curry doesn’t use water (only coconut milk), feel free to use either light or full-fat coconut milk. My preference goes to the latter as it yields a thicker consistency and richer mouthfeel.
Note: Not all coconut milks are equal – some have a more pronounced coconut flavor and fit better for desserts. For savory recipes, my favorite brands are Grace, Thai Kitchen, and Native Forest.
Tofu
For the tofu, you have two options. The fastest option is to start with tofu puffs. They soak up the sauce and become extra soft and chewy as they simmer.
Otherwise, if you cannot find tofu puffs, you will need to use firm tofu and either air-fry or bake it until it is golden brown. I’ll walk you through that process in the instructions section below.
Where to buy: Both tofu puffs and firm tofu are available in the refrigerated section at most well-stocked Asian grocery stores.
Substitute: Feel free to substitute tempeh or young green jackfruit for the tofu!
Green beans
Authentic Indonesian curries typically feature a variety of long green beans called asparagus beans or Chinese long beans. Those are either hard to find or quite expensive outside of Asia – that’s why I went with regular green beans.
Although their texture and flavor differ, they still make a decent substitute.
Salt and sugar
To season. Sugar also helps balance the spiciness.
Note: For a more authentic flavor, replace the salt with around 3/4 tsp of vegan fish sauce.
🥔 Add-ins
I kept this curry simple by using only tofu and green beans as add-ins, but nothing is stopping you from adding extra veggies! I’m thinking carrots, potatoes, mushrooms, sweet potatoes, or bell peppers would taste delicious in this curry! A few more traditional options would be young green jackfruit, pan-fried tempeh, or morning glory!
📔 Success Tips
Double the sauce if you add extras.
Planning on adding extra vegetables or plant-based protein? Then I highly recommend doubling the sauce, which includes curry paste, aromatics, coconut milk, and seasonings, so there is enough to coat everything. If doubling the sauce, use a deep pot or Dutch oven instead of a skillet.
Go easy on the chili.
I’ve mentioned that earlier, but I think it’s worth repeating: this curry is SPICY. Really spicy. And to be honest, I have already toned it down compared to most authentic Indonesian recipes. If you are not used to heat, please stick to just 1/4 of a Thai chili (Bird’s eye chili).
🥣 Let’s Make It!
1. Prepare the aromatic chili paste
- Blend everything into a paste. Add the shallots, garlic, chili, turmeric, ground coriander, toasted cumin seeds, ground turmeric, and water to a blender. Blend on high speed until it forms a smooth paste. Set aside. Note: Feel free to add a bit more water if the paste is too thick.

How to Air-Fry/Bake the Tofu
Unless you are using tofu puffs (which can be added directly to the curry), you will need to cook firm tofu first. Pan-frying works, but I find it a bit messier and more time-consuming. Here’s how to do it:
Dice around 7 ounces (200 g) of tofu into 1-inch (2.5 cm) cubes, and toss them with 1 tablespoon of oil. Then, either air-fry or bake them.
Air-Fry
- Preheat your air fryer to 350°F (175°C).
- Transfer the diced tofu to the air fryer basket, leaving at least 1/2 inch of space between each.
- Air-fry for 15-18 minutes, flipping the tofu once halfway through, until it is golden brown.
Bake
- Preheat your oven to 350°F (175°C) and line a baking sheet with parchment paper.
- Transfer the diced tofu to the baking sheet and arrange it into an even layer, ensuring the cubes do not touch each other.
- Bake for 18-20 minutes, flipping the tofu once halfway through baking, until it is evenly golden brown.
2. Make the Curry
Now that the chili paste and tofu are done, it’s time to make the curry!
- Sauté the chili paste. Heat the oil in a deep skillet or saucepan over medium heat. Once hot, add the curry paste and sauté for 2-3 minutes, stirring frequently. This step will help release flavors and cook the raw aromatics.
- Add the aromatics. Next, add the lemongrass stalk and fresh galangal. Sauté for another 3-5 minutes, stirring regularly.
- Add the remaining ingredients. Pour in the full-fat coconut milk and add the tofu puffs, green beans, bay leaves, Kaffir lime leaves, sugar, and salt. Bring to a boil, then let the curry simmer, uncovered, for 20-25 minutes, stirring regularly, until the green beans are tender. Remove from the heat and adjust the saltiness and sweetness to taste.
- Remove the aromatics. Before serving, remove the lemongrass stalks, galangal pieces, and lime/bay leaves from the curry.
- Garnish. Top the curry with chopped fresh cilantro and a handful of fried shallots!

🍚 What to Serve It With
You can serve this curry with white rice, quinoa, noodles, crusty bread like banh mi baguette, or even naan (although not authentic!).
❄️ Storing and Freezing
- To store: This curry can be stored in the refrigerator for up to 3 days.
- To freeze: Allow the curry to cool completely before transferring it to a freezer-safe container. Freeze for up to 2 months and thaw overnight in the refrigerator before reheating. Please note that freezing will make the tofu slightly spongier.
- To reheat: Reheat gently over medium heat for 5-7 minutes, stirring regularly to prevent sticking.

💬 FAQ
They are what make this curry taste so special, so do not leave them out.
I do not recommend it. You won’t get the same freshness.
There are many different versions of gulai sayuran, so there is no single authentic recipe. This recipe was given to me by an Indonesian cook and has been slightly adapted to suit my taste (mostly by decreasing the amount of heat).
You can thin out the curry with either water or more coconut milk. Remember that if you add extra liquid, you will also need to add more salt and sugar.
If your curry turned out too spicy, the best fix is to dilute it with more liquid or make a second batch without the chili and then combine the two.


Want to Save This Recipe?
Enter your email below & we’ll send it straight to your inbox! Plus, you will receive new recipes every week!
I’d like to receive more tips & recipes from Full of Plants.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Vegan Indonesian Curry
Ingredients
Curry Paste
- 2 shallots roughly chopped
- 2 cloves of garlic
- 1 Bird's eye chili (can be replaced with 1 tbsp of sriracha)
- 1 inch (2.5 cm) fresh turmeric peeled
- 1 tsp ground coriander
- 1/2 tsp toasted cumin seeds
- 1/4 tsp ground turmeric
- 1/4 cup (60 ml) water
Curry
- 2 tbsp (30 ml) oil
- 1 lemongrass stalk (sliced in half crosswise and slightly crushed)
- 1 inch (2.5 cm) fresh galangal (peeled and cut into 2-3 slices)
- 1 13.5-oz can (1 400ml-can) full-fat coconut milk
- 10 pieces tofu puffs (about 3 ounces / 85 g)
- 5 ounces (140 g) green beans cut into 2-inch (5 cm) long pieces
- 2 bay leaves
- 2-3 Kaffir lime leaves
- 1 and 1/2 tsp sugar
- 1/2 + 1/8 tsp salt adjust to taste
- 1/3 cup fried shallots for serving
Instructions
Curry Paste
- Blend everything into a paste. Add the shallots, garlic, chili, turmeric, ground coriander, toasted cumin seeds, ground turmeric, and water to a blender. Blend on high speed until it forms a smooth paste. Set aside. Note: Feel free to add a bit more water if the paste is too thick.
Curry
- Sauté the chili paste. Heat the oil in a deep skillet or saucepan over medium heat. Once hot, add the curry paste and sauté for 2-3 minutes, stirring frequently. This step will help release flavors and cook the raw aromatics.
- Add the aromatics. Next, add the lemongrass stalk and fresh galangal. Sauté for another 3-5 minutes, stirring regularly.
- Add the remaining ingredients. Pour in the full-fat coconut milk and add the tofu puffs, green beans, bay leaves, Kaffir lime leaves, sugar, and salt. Bring to a boil, then let the curry simmer, uncovered, for 20-25 minutes, stirring regularly, until the green beans are tender. Remove from the heat and adjust the saltiness and sweetness to taste.
- Remove the aromatics. Before serving, remove the lemongrass stalks, galangal pieces, and lime/bay leaves from the curry.
- Garnish. Top the curry with chopped fresh cilantro and a handful of fried shallots!
- This curry can be stored in the refrigerator for up to 3 days.
Notes
Double the sauce if you add extras.
Planning on adding extra vegetables or plant-based protein? Then I highly recommend doubling the sauce, which includes curry paste, aromatics, coconut milk, and seasonings, so there is enough to coat everything. If doubling the sauce, use a deep pot or Dutch oven instead of a skillet.Go easy on the chili.
This curry is SPICY. Really spicy. And to be honest, I have already toned it down compared to most authentic Indonesian recipes. If you are not used to heat, please stick to just 1/4 of a Thai chili (Bird’s eye chili).Note: This recipe was first released in August 2022 and updated with new process shots and detailed instructions in August 2025. You can see the older photos below.

About the Author
Thomas Pagot is the founder, photographer, and recipe developer behind Full of Plants. He created the blog in 2016 as a personal cookbook for vegan recipes. Through years of recipe development, Thomas has successfully grown Full of Plants into a trusted resource for plant-based recipes.
Leave a Comment
This recipe is amazing!! I recently had a delicious vegan curry at my favourite Indonesian restaurant and I was dying to have it again – this recipe nailed it! Thank you so much!!
I’m so happy to hear that Harveen! Glad you liked this curry 😉
Your gulai sayuran looks awesome. Being Indonesian i like adding fresh kidney beans & unripe jackfruit along w/ carrots & potatoes.
Looks amazing! definitely going to make it soon
Thanks! Hope you will like it 🙂