Cook the noodles following the package instructions, then drain and refresh in cold water (this stops them from over-cooking) and place to one side.
On a cutting board, peel and thinly slice the onion, then peel and finely chop the garlic.
Peel the ginger using a teaspoon, then chop into matchsticks. Pick the cilantro leaves and finely chop the stalks.
Cut the broccoli florets off the stalk, halve any larger florets, then thinly slice the stalk. Halve the bell pepper, scoop out the seeds and pith with a teaspoon, then slice into strips.
Cut the tofu into rough 3⁄4 inch cubes. Using a vegetable peeler, peel the carrot lengthways into long ribbons.
Trim and halve the chile lengthways (if using), then run a teaspoon down the cut side to scoop out the seeds and white pith. Thinly slice at an angle, then wash your hands thoroughly.
Place a wok or large non-stick frying pan on a medium heat, add the cashew nuts, and toast until golden, stirring regularly. Tip into a small bowl.
Place the wok or pan back on a high heat and drizzle in 1 tablespoon of vegetable oil. Add the red onion, garlic, ginger and cilantro stalks, then fry for 2 minutes, or until lightly golden, stirring regularly.
Throw in the broccoli, bell pepper, tofu and snow peas, and fry for 2 minutes, stirring regularly.
Stir in the spinach and let it wilt, then add the noodles and carrot ribbons. Toss well for a minute to heat through.
Squeeze over the juice from half the lime, add 1 teaspoon of sesame oil and 2 tablespoons of soy sauce, then toss to coat.
Sprinkle over the sliced chile (if using), toasted nuts and the reserved cilantro leaves, then serve with lime wedges for squeezing.
Serving Size 4