Prep the produce. Slice the mango into thin strips.
Julienne the carrot and cucumber, and thinly slice the bell pepper, cabbage, and green onions. Wash and dry the herbs. Keep everything in small bowls for easy assembly.
Prepare the protein. If using shrimp, cook and slice them lengthwise so they lay flat.
If using tofu, press for 15 minutes, slice into batons, and pan-sear with a pinch of salt until lightly golden for better texture and flavor.
Cook the noodles (optional). Boil vermicelli according to package directions. Rinse with cold water, drain well, and set aside.
Make the peanut sauce. Whisk peanut butter, soy sauce, lime juice, rice vinegar, and sweetener until smooth. Add sriracha and ginger.
Thin with warm water until creamy and dippable. Taste and adjust salt, sweetness, and heat.
Set up your rolling station. You’ll need a large shallow bowl or pie dish with warm water, a clean cutting board or damp towel, and your bowls of fillings. Keep a clean kitchen towel nearby.
Soften a wrapper. Dip one rice paper wrapper in warm water for about 5–7 seconds.
It should soften but still feel slightly firm. Place it on the board—it will continue to soften as you fill.
Layer the fillings. Near the bottom third of the wrapper, add a small handful of noodles (if using), then cabbage, carrot, cucumber, bell pepper, mango, and herbs. Add 2–3 shrimp halves or a few tofu slices.
Don’t overfill; less is more for neat rolls.
Roll it up. Fold the bottom edge over the filling, tuck in the sides like a burrito, and roll tightly toward the top. If using shrimp, place them cut-side down near the top edge so they show through the wrapper once rolled.
Repeat. Continue with remaining wrappers and fillings. Cover finished rolls with a slightly damp towel to prevent drying.
Serve. Slice rolls in half if you like.
Serve with the peanut sauce and extra herbs or lime wedges.