Bags of Spices

Favorite Recipes

Dutch-Indonesian

  • Saté Ajam — Indonesian Chicken Satay

    Saté Ajam — Indonesian Chicken Satay

    When I was living in the Netherlands, I had the good fortune of learning a few Indonesian dishes from a kind little Indonesian grandmother in the beautiful city of Delft. Zuster Volder was from Java, and in her small kitchen she showed me how simple ingredients—ketjap manis, shallots, garlic, and warm spices—could transform humble skewers of meat into something unforgettable. This saté ajam, the Indonesian dish most people know as chicken satay or sate ayam, draws inspiration from those lessons: chicken marinated in sweet soy, coconut milk, and fragrant spices, then grilled over hot coals until caramelized and served with rich Dutch-Indonesian peanut sauce (Pindasaus).


    Ingredients

    Chicken

    • 2 lb boneless skinless chicken thighs
    • Bamboo skewers, soaked in water for at least 30 minutes

    Marinade

    • ¼ cup ketjap manis
    • 1 tbsp vegetable oil
    • 1½ tbsp shallot, finely grated
    • ½ tsp fresh ginger, finely grated
    • ½ tsp fresh galangal, finely grated
    • 1 tbsp brown sugar
    • ¼ tsp ground coriander
    • ¼ tsp ground turmeric
    • ¼ tsp ground cumin
    • 1 clove garlic, minced, or ¼ tsp garlic powder
    • 1 tsp lime juice
    • 2 tbsp coconut milk
    • ⅛ tsp white pepper
    • ¼ tsp baking soda

    Pre-Grill Seasoning

    • 1 tsp ketjap manis
    • 1 tsp vegetable oil
    • Pinch of table salt

    Coconut Milk Baste

    • 2 tbsp coconut milk
    • Pinch of table salt

    For Serving

    • Warm Dutch-Indonesian peanut sauce (Pindasaus)
    • Lime wedges
    • Cucumber slices or Acar Ketimun
    • Fried shallots (optional)
    • Steamed rice or lontong

    Directions

    Prepare the Chicken

    Trim any large excess pieces of fat from the chicken thighs. Cut the meat into long strips about ½–¾ inch thick rather than cubes. This traditional shape lets the chicken fold onto the skewers and gives you more caramelized surface area over the coals.

    Thread the chicken onto the soaked skewers, weaving and folding the strips back and forth so the meat lies fairly flat.

    Make the Marinade

    In a medium bowl, combine the ketjap manis, vegetable oil, grated shallot, ginger, galangal, brown sugar, coriander, turmeric, cumin, garlic, lime juice, coconut milk, white pepper, and baking soda. Stir until the sugar is dissolved and the marinade is well blended.

    Marinate the Chicken

    Add the chicken to the marinade and toss well to coat evenly. Cover and refrigerate for 4–5 hours, or up to 8 hours. This timing gives the flavors time to penetrate while the small amount of baking soda helps the chicken stay especially tender over high charcoal heat.

    Prepare the Grill

    Light a charcoal grill and let the coals burn down until they are very hot and covered with a light layer of ash. You want strong direct heat for fast caramelization, but not roaring flames.

    In a small bowl, stir together the coconut milk and a pinch of salt for the baste. In a second small bowl, combine the ketjap manis, oil, and pinch of salt for the pre-grill seasoning.

    Season and Grill the Satay

    Remove the skewers from the refrigerator. Lightly brush or toss the skewered chicken with the pre-grill seasoning. Leave a light coating of marinade on the meat rather than wiping it clean; that helps create the classic lacquered satay crust.

    Place the skewers over direct heat and grill for about 2–3 minutes per side, turning frequently so the sugars caramelize without scorching. During the last minute or two of cooking, brush lightly with the coconut milk baste.

    Cook until the chicken is lightly charred in spots and reaches 165°F.

    Serve

    Arrange the saté ajam on a platter and serve immediately with warm Pindasaus, lime wedges, cucumber or Acar Ketimun, and steamed rice or lontong. A squeeze of lime over the top just before eating brightens the sweet ketjap glaze and balances the peanut sauce beautifully.


    Notes

    Preparation

    • Chicken thighs are preferred here because they stay juicy and tender over high direct heat and hold up better than breast meat in a sweet ketjap marinade.
    • Cutting the chicken into long folded strips instead of cubes gives more surface area for browning and produces a more traditional satay texture.
    • The small amount of baking soda helps the chicken retain moisture and stay tender during quick charcoal grilling. Do not increase the amount, or the flavor can become slightly alkaline.
    • Fresh galangal adds a more traditionally Indonesian, Javanese-leaning aroma to the marinade. If galangal is not available, using 1 tsp finely grated ginger in place of the ginger and galangal combination is still very good.
    • If using larger bamboo skewers, you can double-skewer the chicken to make turning easier over the grill.

    Serving Suggestions

    • Serve with your family’s Pindasaus, lime wedges, and a crisp cucumber pickle such as Acar Ketimun.
    • This pairs especially well with steamed rice, lontong, or as part of a larger rijsttafel-style meal.
    • Fried shallots scattered over the platter add a wonderful savory finish.

    Variations

    • For a more classic yellow Javanese profile, increase the turmeric slightly to ⅜ tsp.
    • If you prefer a cleaner, more straightforward satay flavor, omit the cumin; with it included, the marinade leans a bit more Javanese.
    • Chicken breast can be used, but watch the cook closely and pull as soon as it reaches 150°F, then hold at that temperature for 2.8 minutes for pasteurization, or cook to 165°F for a more conventional approach.

    Make-Ahead & Storage

    • The chicken can be marinated earlier in the day and held refrigerated for up to 8 hours before grilling.
    • Leftover cooked satay can be refrigerated in an airtight container for up to 3 days.
    • Reheat gently in a covered skillet, low oven, or microwave until just warmed through. Serve with freshly warmed Dutch-Indonesian peanut sauce (Pindasaus) for the best texture.
  • Bahmi Goreng — Indonesian Fried Noodles

    Bahmi Goreng — Indonesian Fried Noodles

    When Jane and I returned home from our honeymoon, we talked about what to have for dinner that first Sunday back. I said Indonesian sounded great—she had no idea what I meant. That conversation started what has since become one of our favorite family food traditions. The first time I made bahmi goreng for her, the kitchen filled with the aroma of garlic, chilies, and ketjap caramelizing in a hot wok, and she was instantly hooked. Ever since, this dish has represented warmth, comfort, and the sense of adventure we shared from the very beginning. Stir-fried noodles tossed with tender chicken, pork, and shrimp, fragrant with galangal and brightened with lime, bring a taste of Indonesia to our table time and again.


    Ingredients

      Noodles

    • 12 oz (340 g) Chinese egg noodles or lo mein noodles
    • Proteins

    • 4 oz (115 g) small shrimp, peeled and halved lengthwise (optional)
    • 4 oz (115 g) chicken breast, thinly sliced
    • 4 oz (115 g) lean pork or thinly sliced beef
    • Optional Quick Marinades

    • For Shrimp: ½ tsp light soy sauce, ¼ tsp fish sauce, ¼ tsp cornstarch, pinch white pepper
    • For Pork: 1 tsp ketjap manis, ½ tsp light soy sauce, ¼ tsp cornstarch, ¼ tsp minced garlic
    • For Chicken: 1 tsp ketjap manis, ½ tsp light soy sauce, ¼ tsp cornstarch, ¼ tsp minced garlic, pinch white pepper
    • Vegetables

    • 2 cups shredded white cabbage or Chinese cabbage
    • 4 green onions, cut into 1-inch pieces
    • Bumbu (Spice Paste)

    • 3½ oz (100 g) shallots, roughly chopped
    • 4–5 cloves garlic
    • ½ oz (15 g) fresh galangal, sliced (or ½ tsp galangal powder)
    • 1–2 fresh red chilies, seeded if desired
    • 1 tbsp chopped cilantro stems
    • Seasoning Sauce

    • 2 tbsp ketjap manis (Indonesian sweet soy sauce)
    • 1 tbsp light soy sauce
    • ⅓ tsp MSG (optional but recommended)
    • ¼ tsp ground white pepper
    • ⅛ tsp turmeric
    • 1 tsp fish sauce (optional, for added umami)
    • Cooking Oil

    • 3 tbsp peanut oil, divided
    • Optional Flavor Boost

    • 1 tsp tomato paste
    • Finishing & Garnishes

    • Fresh lime juice, to taste
    • Fresh cilantro leaves
    • Fried shallots
    • Reserved chili slivers
    • Omelet shreds (optional)
    • Fried onion flakes (optional)
    • For Serving

    • Lime wedges
    • Sambal oelek or sambal badjak
    • Extra ketjap manis

    Directions

    Prepare the Noodles

    Cook the noodles according to package directions until just tender. Drain well and toss lightly with about 1 tsp of the peanut oil to prevent sticking.

    Spread the noodles out on a tray or colander and let them cool slightly while preparing the remaining ingredients.

    Optional: Marinate the Proteins

    If using the marinades, toss each protein with its respective marinade ingredients and let stand for 10–15 minutes while preparing the vegetables and bumbu.

    Prepare the Bumbu

    In a food processor or mortar and pestle, grind the shallots, garlic, galangal, chilies, and cilantro stems into a coarse aromatic paste.

    Prepare the Vegetables

    Shred the cabbage and cut the green onions into 1-inch lengths.

    Cook the Proteins

    Heat 1 tbsp peanut oil in a wok over high heat until shimmering.

    Add the chicken and pork (or beef) and spread them across the surface of the wok. Let them sear undisturbed for about 30 seconds before stir-frying.

    Continue stir-frying until just cooked through, about 2–3 minutes.

    Add the shrimp and cook briefly until pink. Transfer all proteins to a plate and set aside.

    Cook the Bumbu

    Add the remaining peanut oil to the wok.

    Add the bumbu paste and stir-fry for about 2 minutes until fragrant.

    If using the tomato paste, add it now and cook about 30 seconds until lightly caramelized.

    Build the Stir-Fry

    Add the cabbage and green onions and stir-fry for 1–2 minutes.

    Add the noodles and toss well with the aromatics.

    Return the proteins to the wok.

    Season and Finish

    Add the ketjap manis, soy sauce, MSG, white pepper, turmeric, and fish sauce if using.

    Toss everything over high heat until evenly coated and glossy. If the noodles absorb the sauce too quickly, add 1–2 tbsp hot water to loosen the sauce and help it coat the noodles.

    Finish with a squeeze of fresh lime juice.

    Serve

    Garnish with cilantro leaves, fried shallots, chili slivers, and optional omelet shreds or fried onion flakes. Serve with lime wedges, sambal, and extra ketjap manis.


    Notes

    Preparation

    • Chinese egg noodles or lo mein noodles work best for this dish.
    • If ketjap manis is unavailable, substitute 1 tbsp soy sauce mixed with 2 tsp brown sugar.
    • If using a less sweet ketjap manis, add ½ tsp brown sugar to balance the sauce.
    • A small amount of fish sauce adds savory depth similar to Indonesian shrimp paste.
    • The tomato paste adds deeper color and umami reminiscent of Dutch-Indo restaurant versions.

    Serving Suggestions

    • Serve with krupuk (Indonesian shrimp crackers).
    • A fried egg on top is a popular Indonesian presentation.
    • A side of acar timun adds refreshing contrast.

    Variations

    • Increase the chilies or add sambal badjak for a spicier Javanese-style version.
    • A light drizzle (about ½ tsp) sesame oil over the finished noodles adds subtle aroma.

    Make-Ahead & Storage

    • Best served fresh from the wok.
    • Leftovers keep up to 2 days refrigerated.
    • Reheat in a skillet with a splash of water or oil.
  • Acar Ketimun — Indonesian Pickled Cucumber

    Acar Ketimun — Indonesian Pickled Cucumber

    Bright, crisp, and refreshingly tangy, acar ketimun is a classic Indonesian quick pickle made with cucumbers, carrots, shallots, and chilies in a lightly sweet-sour vinegar brine. A pinch of turmeric gives the vegetables their traditional golden hue, while the quick pickle balances rich dishes like satay, nasi goreng, and bahmi goreng with fresh acidity and crunch.


    Ingredients

    • 2 medium cucumbers, halved lengthwise, seeded, and sliced into thin half-moons
    • 1 small carrot, julienned (optional but traditional)
    • 1 small shallot, thinly sliced
    • 1–2 small red chilies, thinly sliced (optional)
    • ½ cup rice vinegar (or white vinegar)
    • 3 tbsp sugar
    • ½ tsp table salt
    • ¼ cup water
    • ¼ tsp ground turmeric

    Directions

    Prepare the Pickling Brine

    In a small saucepan, combine the vinegar, sugar, salt, water, and turmeric.

    Warm gently over low heat just until the sugar dissolves. Do not boil. Remove from heat and allow the mixture to cool to room temperature.

    Prepare the Vegetables

    Place the sliced cucumber, carrot, shallot, and chilies in a bowl.

    Pickle

    Pour the cooled pickling liquid over the vegetables and toss to combine.

    Cover and refrigerate for at least 30 minutes before serving. The flavor improves after 2–3 hours.


    Notes

    Preparation

    • Seeding the cucumbers helps keep the pickle crisp and prevents excess water from diluting the brine.
    • Thin slicing allows the vegetables to absorb the brine quickly, giving good flavor even with short chilling times.
    • Turmeric adds the traditional golden color seen in many Indonesian acar served with rijsttafel.

    Serving Suggestions

    • Serve alongside Bahmi Goreng, nasi goreng, or Indonesian satay.
    • The bright acidity cuts through rich, savory dishes flavored with ketjap manis.
    • Also excellent with grilled chicken, pork skewers, or fried rice dishes.

    Variations

    • Bahmi Goreng Version: For a sharper pickle that pairs especially well with fried noodles, reduce the sugar to 2 tbsp and increase the vinegar to ⅔ cup.
    • No-Chili Version: Omit the chilies for a completely mild pickle.
    • Extra Crunch: Add thinly sliced cabbage or lightly blanched green beans.

    Make-Ahead & Storage

    • Best flavor develops after 2–3 hours of chilling.
    • Keeps well refrigerated for up to 3 days.
    • The vegetables will soften slightly over time but remain flavorful.
  • Pindasaus — Dutch-Indonesian Peanut Sauce

    Pindasaus — Dutch-Indonesian Peanut Sauce

    I learned to love peanut sauce (pindasaus) while living in the Netherlands. An Indonesian meal just isn’t right without it. This delicious sauce is a favorite of every member of our family. We use it most often to smother skewers of chicken (Saté Ajam) or beef (Saté Sapi), over vegetables for gado gado, or with mayonnaise and diced onions to top Frites for patatje oorlog. There are two kinds of people in the world: those who love peanut sauce, and those who haven’t eaten it often enough to crave it… yet.


    Ingredients

    Sauce

    • 2 tbsp peanut or vegetable oil
    • 2 cloves garlic, minced
    • ½ tsp hot red curry powder
    • ½ tsp ground coriander
    • 1 cup smooth peanut butter
    • ¼ cup ketjap manis
    • 2 tbsp lime juice
    • 2 tbsp brown sugar
    • 1–2 tsp sambal oelek, to taste
    • 2 tsp tamarind paste (store-bought; or use our homemade Tamarind Paste from Whole Pods)
    • 1 can (14.5 oz/400 ml) coconut milk
    • ¼ tsp aji-no-moto, or to taste
    • Warm water, as needed to thin

    Optional

    • 1 tsp dark soy sauce, for a deeper Dutch-Indonesian satay-house flavor

    Directions

    Bloom the Aromatics

    Heat the oil in a saucepan over medium-low heat. Add the garlic and cook just until fragrant, stirring constantly so it does not brown.

    Add the curry powder and ground coriander and cook for about 30 seconds, stirring, until aromatic.

    Build the Sauce

    Stir in the peanut butter, ketjap manis, lime juice, brown sugar, sambal oelek, and tamarind paste. Mix until smooth and evenly combined.

    Add the Coconut Milk

    Gradually whisk in the coconut milk until the sauce is creamy and smooth. If using the optional dark soy sauce, stir it in now.

    Reduce the heat to low and warm gently for 2–3 minutes, stirring often. Do not let the sauce boil hard.

    Finish and Adjust

    Stir in the aji-no-moto. Thin with warm water as needed until the sauce reaches your preferred consistency.

    Taste and adjust with additional tamarind for tang, sambal for heat, brown sugar for sweetness, or a little more MSG for deeper savory flavor. Keep warm for serving, or cool and refrigerate for later use.

    Serve

    Serve warm over satay, spoon over blanched vegetables for gado gado, or drizzle over Frites with mayonnaise and diced onions for patatje oorlog.


    Notes

    Preparation

    • Blooming the curry powder and coriander briefly in the oil deepens their flavor and helps them blend more fully into the sauce.
    • Tamarind gives the sauce a brighter, more balanced finish and keeps it from tasting too sweet or heavy.
    • MSG is optional, but even a small amount gives the sauce a fuller, more savory satay-stall character.
    • Use warm water for thinning so the sauce stays smooth and emulsified.

    Serving Suggestions

    • This sauce is especially good with Saté Ajam.
    • It also pairs beautifully with saté babi, grilled Saté Sapi, gado gado, or spooned over Frites with mayonnaise and diced onions for patatje oorlog.
    • For a satay platter, serve with lime wedges, Acar Ketimun, fried shallots, and steamed rice or lontong.

    Variations

    • Add the optional dark soy sauce for a slightly deeper, more savory Dutch-Indonesian satay-house flavor.
    • For a milder sauce, start with 1 tsp sambal oelek and increase to taste.
    • For a tangier sauce, add an extra 1–2 tsp tamarind paste or a little more lime juice.
    • For a looser sauce for gado gado or fries, thin with a bit more warm water until spoonable and pourable.

    Make-Ahead & Storage

    • The sauce can be made up to 3 days ahead and refrigerated in an airtight container.
    • It will thicken considerably when chilled. Rewarm gently over low heat and thin with warm water as needed before serving.
    • Leftovers are excellent repurposed as a dip for grilled chicken, a sauce for noodles, or a dressing for blanched vegetables.
  • Spring Roll Peanut Dipping Sauce

    Spring Roll Peanut Dipping Sauce

    This spring roll peanut dipping sauce is unapologetically peanut-forward — creamy, savory, and deeply satisfying, with the Dutch-Indonesian flavor logic I fell in love with in The Netherlands. Ketjap manis and hoisin bring a mellow sweetness and depth, coconut milk keeps it silky, and a small spoonful of tamarind adds the subtle tang that makes the peanuts pop instead of tasting heavy. It’s the kind of sauce you’ll want to keep in the fridge so fresh spring rolls (and plenty of other things) always have a rich, nutty sidekick.


    Ingredients

    • ½ cup creamy peanut butter
    • ½ tsp (about 1 clove) garlic, minced
    • 1 tbsp lime juice
    • 2 tbsp ketjap manis
    • 2 tbsp hoisin sauce
    • 1 tsp tamarind paste
    • 1 can (14 oz) coconut milk
    • 1 tsp ginger, minced
    • ½ tsp red curry powder
    • ½ tsp sambal oelek
    • 1½ tsp fish sauce
    • 2 tbsp peanuts, crushed (for topping)

    Directions

    Make the Sauce:

    In a saucepan over medium heat, combine peanut butter and minced garlic. Stir continuously for 1–2 minutes, until the mixture is smooth and fragrant.

    Add lime juice, ketjap manis, hoisin sauce, and tamarind paste, stirring to combine.

    Gradually whisk in coconut milk, followed by ginger, red curry powder, sambal oelek, and fish sauce.

    Continue to cook, stirring occasionally, until the sauce is heated through and just begins to simmer. Remove from heat and transfer to a serving bowl. Sprinkle with crushed peanuts just before serving.


    Notes

    Preparation

    • Consistency: This sauce thickens as it cools. If it gets too thick, whisk in warm water 1 tbsp at a time until dip-able.
    • Balance check: Tamarind and lime should read as a gentle tang in the background — not sour. If it tastes too sharp, add 1–2 tbsp coconut milk to soften it.
    • Heat level: As written it’s moderately spicy. For a milder family-friendly version, cut sambal oelek to ¼ tsp (or to taste).

    Serving Suggestions

    • Fresh spring rolls (gỏi cuốn) and summer rolls.
    • As a satay-style dip for grilled chicken, shrimp, or tofu.
    • Drizzled over rice bowls, noodle bowls, or steamed vegetables.

    Variations

    • Extra spicy: Increase sambal oelek to 1 tsp, or add ¼ tsp cayenne.
    • More peanut texture: Stir in an additional 1–2 tbsp crushed peanuts off heat, then top as usual.
    • More savory: Add an extra ½ tsp fish sauce and a squeeze of lime to keep it balanced.

    Make-Ahead & Storage

    • Make ahead: Best made in advance — the flavors settle and improve after a few hours (or overnight) in the fridge.
    • Refrigerate: Cool completely, then store in a sealed container for up to 5 days.
    • Reheat: Warm gently over low heat (or microwave in short bursts), whisking often. Add a splash of water as needed; avoid boiling.