A vibrant, plant-based Caribbean feast featuring creamy coconut rice and peas paired with a spiced tofu and sweet potato curry. Bold seasonings, warming curry spices, and a touch of scotch bonnet heat make this a hearty, satisfying meal that’s naturally vegan and full of flavor.
Why You’ll Love This Recipe
- A full meal in one: rice, beans, curry, and protein-packed tofu.
- Big Caribbean flavor with simple ingredients.
- Naturally vegan and gluten-free.
- Easy to adapt for milder or spicier tastes.
- Perfect for batch cooking—great the next day too.

Ingredients
(Tip: You’ll find the full list of ingredients and measurements in the recipe card below.)
For the Rice and Peas
- 125 g dried kidney beans, soaked overnight and rinsed
- 1 medium onion, chopped
- 2 spring onions, cut in half
- 2 sprigs fresh thyme
- 1 scotch bonnet pepper (optional, left whole)
- 1 teaspoon black pepper
- 1 teaspoon all-purpose seasoning
- 1 garlic clove, finely chopped
- 100 ml low-fat or light coconut milk
- 125 g white rice (long grain or basmati), washed and drained
- 400 ml water (plus more if needed)
For the Curry
- 300 g extra-firm tofu, patted dry and cut into 2.5 cm cubes
- 3 teaspoons vegetable oil, divided
- 1 medium onion, chopped
- 4 garlic cloves, crushed and minced
- 0.5 teaspoon turmeric powder
- 1 teaspoon paprika
- 2 teaspoons Jamaican curry powder
- 0.5 scotch bonnet pepper, deseeded and chopped (optional)
- 0.5 teaspoon dried thyme
- 1 low-salt seasoning cube (5 g)
- 1 bay leaf
- 125 g sweet potatoes, peeled and chopped into bite-sized chunks
- 500 ml water
- 3 spring onions, chopped
- 2 tablespoons fresh coriander, chopped (optional, for garnish)
Directions
- Cook the Rice and Peas
- Put the soaked beans in a large pot. Add onion, spring onions, thyme, chopped garlic, black pepper, all-purpose seasoning, scotch bonnet (whole), and coconut milk. Cover with 400 ml water, stir, and boil on medium-low for 40–50 minutes, until beans are soft.
- If using tinned beans, skip the long boil—combine everything and go straight to adding the rice.
- Add washed rice to the beans. Ensure there is about 2.5 cm water above the rice and beans (add more if needed). Cover and cook on low heat for 30 minutes, or until rice is tender. While it cooks, start the curry.
- Cook the Tofu
- Heat 2 teaspoons oil in a non-stick pan or wok. Fry tofu cubes on each side until golden. Remove and drain on paper towel.
- Cook the Curry Base
- In the same pan, heat remaining 1 teaspoon oil. Add onion, garlic, and pepper; cook 2 minutes. Stir in turmeric, paprika, curry powder, chopped scotch bonnet (if using), dried thyme, seasoning cube, and bay leaf. Cook for 1–2 minutes.
- Add sweet potatoes and mix well. Pour in 500 ml water, bring to a boil, then cover and simmer for 10–12 minutes, until potatoes are tender and curry thickens.
- Add spring onions and tofu to the curry. Bring to a boil and cook 5 more minutes.
- Serve
- Remove the whole scotch bonnet from the rice and peas. Fluff the rice with a fork. Serve hot with a generous portion of curry, garnished with fresh coriander.
Servings And Timing
- Servings: 4
- Prep time: 15 minutes (plus overnight bean soak if using dried beans)
- Cook time: 1 hour 20 minutes (less if using tinned beans)
- Total time: about 1 hour 35 minutes (or 1 hour with tinned beans)
Variations
- Swap kidney beans for pigeon peas, cowpeas, or black-eyed beans.
- Use squash or pumpkin instead of sweet potatoes.
- Add extra vegetables like carrots, aubergine, or spinach to the curry.
- Make it milder by skipping the scotch bonnet or using only a small piece.
- Try smoked tofu for a deeper, savory flavor.
Storage/Reheating
- Storage: Cool completely before refrigerating in airtight containers. Keeps for up to 4 days.
- Freezing: Freeze curry and rice separately for up to 2 months. Thaw in the fridge overnight.
- Reheating: Warm curry on the stovetop over low heat with a splash of water. Microwave rice with a damp paper towel to retain moisture.

FAQs
Can I Use Tinned Beans For The Rice And Peas?
Yes, it will save time. Just skip the 40–50 minute boil and go straight to adding the rice.
What Can I Use Instead Of Tofu?
Chickpeas, tempeh, or seitan are great alternatives.
How Spicy Is This Dish?
With scotch bonnet, it has a noticeable heat. Reduce or omit for a milder version.
Can I Make The Rice In A Rice Cooker?
Yes—just cook the beans first on the stove, then transfer everything to the rice cooker to finish.
What Type Of Curry Powder Should I Use?
Jamaican curry powder is traditional. It’s milder and more aromatic than Indian curry powders.
How Do I Prevent The Tofu From Sticking?
Make sure the pan and oil are hot before adding tofu, and don’t move it too soon—let it form a crust before flipping.
Can I Use Coconut Cream Instead Of Coconut Milk?
You can, but dilute it with water for a similar consistency and to avoid overpowering richness.
Is This Dish Gluten-Free?
Yes, as long as your all-purpose seasoning and stock cube are gluten-free.
Can I Add More Protein?
Yes—red lentils or cooked chickpeas can be added to the curry.
What Should I Serve With This?
It’s a complete meal, but fried plantains or a fresh salad pair beautifully.
Conclusion
This Caribbean tofu and sweet potato curry with rice and peas is a flavor-packed, wholesome meal that delivers warmth, spice, and comfort in every bite. Whether you stick with the traditional ingredients or swap in your favorites, it’s a dish that will brighten any dinner table.
Print
Caribbean Tofu And Sweet Potato Curry With Rice And Peas
- Total Time: 1 hour 35 minutes (or 1 hour with tinned beans)
- Yield: 4 servings
- Diet: Vegan
Description
A vibrant, plant-based Caribbean feast of creamy coconut rice and peas served with a spiced tofu and sweet potato curry. Packed with Jamaican curry flavors, coconut richness, and a touch of scotch bonnet heat, it’s a hearty vegan main that’s naturally gluten-free and full of flavor.
Ingredients
125 g dried kidney beans, soaked overnight and rinsed (or use tinned beans)
1 medium onion, chopped
2 spring onions, cut in half
2 sprigs fresh thyme
1 scotch bonnet pepper (optional, left whole for rice)
1 teaspoon black pepper
1 teaspoon all-purpose seasoning
1 garlic clove, finely chopped
100 ml low-fat or light coconut milk
125 g white rice (long grain or basmati), washed and drained
400 ml water (plus more if needed)
300 g extra-firm tofu, patted dry and cut into 2.5 cm cubes
3 teaspoons vegetable oil, divided
1 medium onion, chopped
4 garlic cloves, crushed and minced
0.5 teaspoon turmeric powder
1 teaspoon paprika
2 teaspoons Jamaican curry powder
0.5 scotch bonnet pepper, deseeded and chopped (optional, for curry)
0.5 teaspoon dried thyme
1 low-salt seasoning cube (5 g)
1 bay leaf
125 g sweet potatoes, peeled and chopped into bite-sized chunks
500 ml water
3 spring onions, chopped
2 tablespoons fresh coriander, chopped (optional, for garnish)
Instructions
- Cook the Rice and Peas: In a large pot, add soaked beans, onion, spring onions, thyme, garlic, black pepper, all-purpose seasoning, whole scotch bonnet, coconut milk, and 400 ml water. Boil over medium-low for 40–50 minutes until beans are soft. If using tinned beans, skip long boiling and proceed to adding rice.
- Add washed rice to the beans, ensuring 2.5 cm water above. Cover and cook on low heat for 30 minutes until rice is tender.
- Cook the Tofu: Heat 2 tsp oil in a non-stick pan or wok. Fry tofu cubes until golden on all sides. Remove and drain on paper towel.
- Cook the Curry Base: In the same pan, heat remaining 1 tsp oil. Add onion, garlic, and pepper; cook for 2 minutes. Stir in turmeric, paprika, curry powder, chopped scotch bonnet (if using), dried thyme, seasoning cube, and bay leaf. Cook for 1–2 minutes.
- Add sweet potatoes, mix well, then pour in 500 ml water. Bring to a boil, cover, and simmer for 10–12 minutes until potatoes are tender and curry thickens.
- Stir in spring onions and fried tofu. Bring to a boil and cook for 5 more minutes.
- Serve: Remove whole scotch bonnet from rice and peas. Fluff rice with a fork and serve alongside curry, garnished with fresh coriander if desired.
Notes
- Swap kidney beans for pigeon peas, cowpeas, or black-eyed beans.
- Use squash or pumpkin instead of sweet potatoes.
- Add vegetables like carrots, aubergine, or spinach to the curry.
- For milder heat, omit scotch bonnet or use a small amount.
- Try smoked tofu for deeper flavor.
- If using tinned beans, reduce cook time by ~40 minutes.
- Rice cooker option: cook beans first, then transfer with rice to cooker.
- Dilute coconut cream with water if substituting for coconut milk.
- Ensure seasoning cube and all-purpose seasoning are gluten-free if needed.
- Serve with fried plantains or a crisp salad for contrast.
- Storage: refrigerate up to 4 days; freeze curry and rice separately up to 2 months.
- Prep Time: 15 minutes (plus overnight bean soak if using dried beans)
- Cook Time: 1 hour 20 minutes (less if using tinned beans)
- Category: Main Course
- Method: Stovetop
- Cuisine: Caribbean
Nutrition
- Serving Size: 1/4 of recipe
- Calories: 420 kcal
- Sugar: 7 g
- Sodium: 320 mg
- Fat: 15 g
- Saturated Fat: 7 g
- Unsaturated Fat: 8 g
- Trans Fat: 0 g
- Carbohydrates: 58 g
- Fiber: 8 g
- Protein: 16 g
- Cholesterol: 0 mg