Bags of Spices

Favorite Recipes

Crowd-Pleaser

  • 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.
  • Alabama White Barbecue Sauce

    Alabama White Barbecue Sauce

    Alabama white barbecue sauce is one of those condiments that quietly steals the show—sharp, peppery, and creamy enough to cling to smoked chicken and pulled pork without ever feeling heavy. This version leans into that classic tang with apple cider vinegar, stone-ground mustard, horseradish, and plenty of black pepper, plus just enough optional sweetness and umami to round the bite. It’s the kind of sauce people remember after a cookout and ask for by name, whether you’re brushing it on grilled chicken thighs, serving it alongside ribs, or drizzling it over a piled-high pulled pork sandwich.


    Ingredients

    • 1 cup mayonnaise
    • 3 tbsp apple cider vinegar
    • 1½ tbsp prepared stone-ground mustard
    • 2-3 tsp prepared horseradish, to taste
    • 2 tsp coarsely ground black pepper, lightly toasted
    • ¾ tsp table salt
    • ½ tsp garlic powder
    • ¾ tsp onion powder
    • ¾ tsp Worcestershire sauce
    • ½ tsp hot sauce (such as Louisiana-style), or to taste
    • ½–1 tsp honey or sugar, to taste (optional, recommended)
    • ½ tsp fresh lemon juice (optional, for brightness)
    • ⅛ tsp MSG or 1–2 tsp dill pickle brine (optional, for extra depth)

    Directions

    Mix the Sauce

    Place the coarsely ground black pepper in a small dry skillet over medium-low heat and toast for 20–30 seconds, just until fragrant. Remove from heat and let cool slightly.

    In a medium bowl, whisk together the mayonnaise, apple cider vinegar, stone-ground mustard, horseradish, black pepper, salt, garlic powder, onion powder, Worcestershire sauce, hot sauce, honey or sugar (if using), lemon juice (if using), and either MSG or dill pickle brine (if using) until completely smooth and well combined.

    Adjust and Chill

    Taste and adjust seasoning: add a splash more vinegar for extra tang, a bit more honey or sugar to round the acidity, or additional hot sauce and horseradish for more heat. The sauce should taste slightly sharper and more intense than you want it to finish, as the flavors will mellow while chilling.

    Cover and refrigerate for at least 2 hours, preferably overnight, to allow the flavors to blend and the pepper to soften. Stir well before serving. Use within about 1 week.


    Notes

    Preparation

    • Use a good-quality, full-fat mayonnaise for best texture and flavor; reduced-fat mayo will make the sauce thinner and less stable.
    • Prepared horseradish varies in strength—start on the low end and add more to taste once everything is mixed.
    • The optional honey or sugar doesn’t make the sauce noticeably sweet; it simply softens the acidity and heat for a more rounded, restaurant-style finish.
    • Toasting the black pepper is optional but enhances its aroma and adds a slightly deeper, smokier note.

    Serving Suggestions

    • Brush over grilled or smoked chicken during the last 3–5 minutes of cooking, then serve extra on the side for dipping.
    • Drizzle over pulled pork sandwiches or use as a sandwich spread in place of plain mayonnaise.
    • Serve as a dipping sauce for smoked turkey, ribs, or grilled vegetables.
    • Thin slightly with water or buttermilk to create a drizzle for grain bowls, roasted potatoes, or chopped salads.

    Variations

    • Salad Dressing: For a creamy, tangy salad dressing, whisk in 2–3 tbsp buttermilk per 1 cup of sauce until pourable. Adjust salt and pepper to taste.
    • Sandwich Spread: For a slightly looser spread for sandwiches or pulled pork, whisk in about 1 tbsp buttermilk per 1 cup of sauce, or simply use the sauce as-is.
    • Extra-Spicy Version: Increase the hot sauce to 1–1½ tsp, add more horseradish to taste, and consider a pinch of cayenne for a lingering heat.
    • Smoky Version: Add ⅛–¼ tsp smoked paprika or a few drops of liquid smoke for a subtle smoky note.
    • Herb Variation: Stir in 1–2 tbsp finely chopped fresh parsley, chives, or dill just before serving for a fresher, greener profile.

    Make-Ahead & Storage

    • This sauce is best made at least a few hours in advance; overnight chilling gives the most balanced flavor.
    • Store in an airtight container in the refrigerator for up to 1 week, stirring before each use.
    • Because the base is mayonnaise, do not freeze; the emulsion will break once thawed.
    • Always use clean utensils when dipping into the sauce to maximize its shelf life.
  • Carne Asada Tacos

    Carne Asada Tacos

    Carne asada tacos are all about bold, bright flavors—citrus, chiles, and fire meeting the smoky heat of the grill. This version brings together a vibrant, well-balanced marinade, a hot charcoal sear, and classic taquería toppings for tacos that taste like they came straight from a late-night stand in Mexico. Served with warm corn tortillas, diced onion, fresh cilantro, and your choice of salsa verde or chile de árbol salsa, these tacos are simple, deeply flavorful, and perfect for any cookout.


    Ingredients

      Marinade

    • ½ cup cilantro, roughly chopped
    • ⅓ cup avocado oil
    • ¼ cup soy sauce
    • ¼ cup orange juice
    • 2 tbsp lime juice (see note for overnight marinade)
    • 1 jalapeño, minced
    • 3–4 garlic cloves, crushed
    • 2–3 tbsp grated white onion
    • 1 tsp cumin
    • 1 tsp chipotle chili powder
    • 1 tsp ancho chili powder
    • ½ tsp mexican oregano
    • ¼ tsp cinnamon
    • 1–2 tbsp Mexican Coke (optional, enhances caramelization)
    • 1 tsp Worcestershire sauce
    • Optional Dry Substitutions (If Fresh Aromatics Are Unavailable)

    • ½ tsp garlic powder (instead of fresh garlic)
    • ½ tsp onion powder (instead of fresh onion)
    • Meat

    • 1–2 lbs flank or skirt steak
    • ½–1 tsp kosher salt, for seasoning before grilling
    • Finishings

    • Corn tortillas
    • 1 white onion, diced
    • 1 bunch cilantro, stemmed and chopped
    • Salsa Verde or Chile de Árbol Salsa
    • Limes, cut into wedges

    Directions

    Prepare the Marinade

    In a bowl, combine cilantro, avocado oil, soy sauce, orange juice, lime juice, jalapeño, garlic, grated onion, cumin, chipotle chili powder, ancho chili powder, oregano, cinnamon, Mexican Coke (if using), and Worcestershire sauce.

    Mix well to blend.

    Marinate the Steak

    Place steak in a resealable plastic bag or shallow dish and pour the marinade over the top. Seal or cover tightly, pressing out excess air.

    Marinate for 2–4 hours.

    For overnight marinating, reduce lime juice to 1 tbsp to avoid surface mushiness.

    Preheat the Grill

    Heat a charcoal grill to very high heat (550–650°F) for proper searing.

    Grill the Steak

    Remove the steak from the marinade and pat completely dry with paper towels for better browning. Season both sides with ½–1 tsp kosher salt.

    Place the steak on the grill and flip every minute for even charring and tenderness, grilling 3–4 minutes per side or until medium-rare (130–135°F).

    Optional:

    • Boil ¼ cup reserved marinade for 1 minute and lightly baste the steak during the final minute of cooking for deeper color and flavor.

    Rest and Slice

    Let the steak rest for 5–10 minutes to allow juices to redistribute.

    Slice thinly on the bias, making sure to cut against the grain for maximum tenderness.

    Assemble the Tacos

    Warm corn tortillas until soft and pliable.

    Fill with sliced steak and top with diced onion, chopped cilantro, your choice of salsa verde or chile de árbol salsa, and a squeeze of lime.


    Notes

    Preparation

    • Skirt steak is more traditional for carne asada and tends to grill quickly with excellent flavor, though flank steak also works beautifully. Cutting on the bias gives each slice more surface area, enhancing tenderness and making the meat easier to layer into tacos.
    • If using the optional Mexican Coke, it adds caramelization and depth without making the marinade taste sweet.

    Serving Suggestions

    • Great with Mexican Rice, Refried Beans, or Lime-Pickled Red Onions.
    • Offer both salsas—verde for brightness, chile de árbol for heat.

    Variations

    • Add a pinch of smoked paprika for a subtle smoky note without overpowering the grill flavor.
    • Swap jalapeño for serrano for more heat.

    Make-Ahead & Storage

    • Marinade can be made 2–3 days in advance.
    • Leftover carne asada keeps 3 days refrigerated.
    • Reheat sliced steak briefly in a hot skillet to avoid drying out.
  • Birria de Res

    Birria de Res

    Rich, smoky, and deeply spiced, this family favorite Birria de Res captures the essence of traditional Jalisco-style beef birria. Slow-simmered with a blend of toasted chiles and warm spices, it can be served as a hearty stew or transformed into crispy, cheesy Quesabirria tacos with plenty of the rich consommé for dipping. A perfect centerpiece for any gathering.


    Ingredients

      Birria Base

    • 7 dried guajillo chiles
    • 7 dried morita chiles
    • 4 dried ancho chiles
    • 3 dried chiles de árbol (optional for heat)
    • 1 liter boiling water
    • 5 lb beef chuck, cut into 4-inch chunks
    • 2 lb beef short ribs
    • Salt and freshly ground black pepper
    • 2 tbsp neutral oil
    • 2 tsp Mexican oregano
    • 2 tsp cumin seeds
    • 1 tsp black peppercorns
    • 1 tsp whole cloves
    • 1 tsp allspice berries
    • 3 bay leaves
    • 1 tbsp onion powder
    • 1 tsp paprika
    • 1 tsp ground cinnamon
    • 1 can (28 oz) whole tomatoes with juice
    • 1 tbsp minced garlic (about 3 cloves)
    • 2 tbsp table salt
    • 2 tbsp vinegar (white or apple cider)
    • ½ cup vegetable oil
    • For Quesabirria Tacos

    • Corn tortillas
    • Oaxaca, mozzarella, or jack cheese (shredded)
    • Diced onion
    • Chopped cilantro
    • Lime wedges, for serving

    Directions

    Prepare the Chiles

    Remove stems and seeds from the dried chiles. Toast lightly in a dry skillet over medium heat, pressing gently until fragrant (about 15–20 seconds per side). Transfer to a bowl and cover with boiling water. Soak for 30 minutes until softened.

    Toast and Grind Spices

    In a spice grinder or mortar and pestle, grind Mexican oregano, cumin seeds, peppercorns, cloves, allspice, and bay leaves into a coarse powder. Stir in onion powder, paprika, and cinnamon; set aside.

    Brown the Meat

    Pat beef dry and season generously with salt and pepper. In a large Dutch oven, heat 2 tbsp oil over medium-high heat until shimmering. Brown the meat in batches on all sides until deeply golden; transfer to a bowl and set aside.

    Build the Chile Base

    In the same Dutch oven, add the spice mixture and toast briefly (15–30 seconds) until aromatic. Add tomatoes with their juice, crushing them with the back of a wooden spoon. Stir in garlic, salt, and vinegar. Blend the softened chiles with their soaking liquid until smooth and add to the pot. Let the mixture simmer over medium heat for 2–3 minutes to bloom the chile flavors before adding the browned meat back. Scrape up any browned bits from the bottom as you stir.

    Simmer Low and Slow

    Add ½ cup oil, stir, and reduce heat to low. Cover partially and simmer gently for 3–4 hours, or until meat is tender enough to shred easily. If the liquid reduces too much, add a splash of hot water or beef broth as needed.

    Adjust and Strain (Optional)

    Remove the meat and shred. Skim off the red chile oil that rises to the top and reserve for frying tortillas. For a more refined consommé, strain the sauce through a fine sieve. For a more rustic texture (as our family prefers), leave it unstrained.

    Serve as Stew or Tacos

    For stew service, return shredded meat to the sauce and serve in bowls with diced onion, cilantro, and lime wedges. For Quesabirria tacos, continue below.

    Quesabirria Tacos

    Shred the beef and moisten with a few tablespoons of birria sauce. Reserve the skimmed chile oil for frying. Dip a corn tortilla into the red oil and lay it on a hot skillet or griddle. Spoon shredded meat and cheese onto one side; fold and press lightly. Cook until crisp and golden on both sides, about 1–2 minutes per side.

    Serve tacos with diced onion, chopped cilantro, and lime wedges. Include a small bowl of the birria sauce for dipping (consommé).


    Notes

    Preparation

    • Toasting the chiles deepens their smoky flavor and prevents bitterness — avoid burning them.
    • Blooming the chile-tomato base briefly enhances color and richness before simmering.
    • Use beef chuck and short ribs for the perfect balance of tenderness and flavor.
    • For a richer taco crust, mix the reserved chile oil with a bit of ghee or butter before frying.
    • Birria tastes even better the next day as the flavors meld and intensify.

    Serving Suggestions

    • Serve the birria as a stew with warm corn tortillas, onion, cilantro, and lime wedges.
    • Use the same base for Quesabirria tacos — crisp, cheesy tacos dipped in the rich chile consommé.
    • Offer lime wedges on the table for brightness and balance.

    Variations

    • For milder heat, reduce or omit chiles de árbol.
    • Add a touch of smoked paprika for a subtle, smoky accent if morita chiles are unavailable.
    • Try goat or lamb shoulder for traditional birria de chivo or birria de borrego.
  • Saté Sapi — Beef Satay

    Saté Sapi — Beef Satay

    Saté Sapi Dengan Saus Kacang – Dutch-Indonesian Beef Satay with Peanut Sauce: The most memorable part of my first Christmas in the Netherlands was the evening we spent with a generous Indonesian family in Dordrecht. They invited us to share a rijsttafel—my very first taste of a true Indonesian feast. When we arrived, the table was covered with what seemed like dozens of colorful dishes, their fragrant aromas filling the home. Among them, one dish stood out: saté sapi (beef satay). Served with acar ketimun (sweet-and-sour cucumbers) and richly spiced peanut sauce, the skewers of marinated beef were grilled over charcoal and lightly glazed with ketjap manis. Just thinking about it brings back vivid memories of the smoky aroma and layered flavors. This recipe is my way of returning to that Christmas dinner, and to the warmth of friends who welcomed me—a newcomer in what then felt like a strange land—as one of their own.


    Ingredients

    • 2–4 lbs beef (sirloin, tri-tip, flank, or ribeye), sliced into strips about ¼-inch thick and 2–3 inches long
    • Velveting:

    • 2 cups water
    • 1 tsp baking soda
    • ¼ cup soy sauce
    • Marinade:

    • ¼ cup ketjap manis
    • 1 tbsp vegetable oil
    • 1 tbsp shallot, finely grated (or onion)
    • 1 tsp fresh ginger, grated
    • 1 tbsp brown sugar
    • ¼ tsp ground coriander
    • 1 clove garlic, minced (or ¼ tsp garlic powder)
    • 2 tsp lime juice
    • 2 tbsp coconut milk
    • ⅛ tsp white pepper
    • Peanut Sauce:

    • 1 cup smooth peanut butter
    • 2 cloves garlic, minced
    • 2 tbsp oil (peanut or vegetable)
    • ¼ cup ketjap manis
    • 2 tbsp lime juice
    • 2 tbsp brown sugar
    • ½ tsp hot red curry powder
    • 1–2 tsp sambal oelek (to taste)
    • 1 can (14 oz) coconut milk
    • ½ tsp ground coriander (optional, ties to marinade)
    • ¼ tsp aji-no-moto (optional)
    • 2 tsp tamarind paste (optional, for tang)
    • warm water, as needed to thin
    • For Serving:

    • wooden skewers, soaked at least 1 hour
    • acar ketimun (quick cucumber pickle) or fresh cucumber salad
    • steamed rice (or lontong / rice cakes)

    Directions

    Velvet the Beef

    Slice beef into thin strips. Combine water, baking soda, and soy sauce, then add beef and soak 1–2 hours in the refrigerator. Drain, rinse briefly under cold water, and pat dry.

    Marinate the Beef

    Whisk together all marinade ingredients. Add velveted beef, toss to coat thoroughly, cover, and marinate 3–12 hours in the refrigerator.

    Prepare the Peanut Sauce

    Heat oil in a saucepan over medium-low heat. Add garlic and sauté until fragrant but not browned.

    Stir in peanut butter, ketjap manis, lime juice, brown sugar, curry powder, sambal, and coriander. Mix until smooth.

    Gradually whisk in coconut milk until creamy. Reduce heat to low and warm gently for 2–3 minutes.

    Thin with warm water if needed. Adjust to taste with tamarind, sambal, or sugar. Keep warm or rewarm gently before serving.

    Grill the Satay

    Thread marinated beef strips onto soaked skewers. Grill over hot charcoal 2–3 minutes per side, or until lightly charred at the edges.

    In the final minute, baste lightly with a mixture of ketjap manis and oil for caramelization.

    Serve

    Arrange skewers on a platter. Serve with warm peanut sauce, cucumber pickle, and steamed rice or lontong.


    Notes

    Preparation

    • Velveting ensures tenderness while avoiding any baking-soda aftertaste when rinsed properly.
    • Use thin, even beef strips for consistent grilling and ideal caramelization.
    • A touch of tamarind in the sauce adds depth and a gentle sour note that complements ketjap manis.

    Serving Suggestions

    • Serve with acar ketimun for freshness and contrast.
    • Pair with steamed jasmine rice, lontong, or coconut rice.
    • Excellent with grilled vegetables or nasi goreng.

    Variations

    • Spicy Version: increase sambal in both marinade and sauce.
    • Sweeter Dutch Style: add an extra tablespoon ketjap manis during grilling.
    • Smokier Grill: add a small piece of lump charcoal beside the coals to intensify aroma.

    Make-Ahead & Storage

    • Marinated beef keeps up to 24 hours refrigerated.
    • Peanut sauce can be made 2–3 days ahead; rewarm gently to loosen.
    • Leftover skewers keep 2–3 days refrigerated and reheat well over medium heat.