Heat the oil in a large pot over medium-high heat. Once hot, add the curry leaves to the hot oil and fry them for about 45-60 seconds until they become crispy. Remove the curry leaves with a slotted spoon and set aside. If air frying, toss the curry leaves lightly in oil and air fry at 350°F (175°C) for three to four minutes. Set aside.
Once the curry leaves have been removed from the oil, add the sliced eggplant and fry for 4-5 minutes until golden brown. Remove with a slotted spoon and drain on a wire rack suspended over a baking pan. If you are air frying instead, spray the eggplant slices with a small amount of cooking oil and air fry at 400°F (200°C) for 6-7 minutes until golden and tender.
Once the eggplant pieces have been removed, fry the king oyster mushrooms until they are browned and crispy, then transfer them to the wire rack to cool and drain. Carefully discard the oil from the pot, leaving it clean for the next steps. Alternatively, lightly coat the mushrooms with cooking spray, and air fry the mushrooms for 5-6 minutes at 400°F (200°C) just until tender.
Add one tablespoon of oil to the pot over medium heat. After 90 seconds, when the oil is hot, sauté the diced shallots for 4 minutes until translucent and fragrant.
Stir in the minced garlic, curry leaves, sambal oelek, red curry paste, and curry powder. Cook for a couple of minutes until the mixture becomes fragrant.
Add the rice vinegar, pour in the vegetable stock and turn the heat up to high to bring the broth to a boil.
Once boiling, add the noodles and cook until they are al dente, following the package instructions.
Turn the heat off under the pot and stir in the coconut milk and add salt to taste.
To assemble, use tongs to distribute the noodles evenly in the center of each bowl. Use a ladle to spoon the curry broth into each bowl over the noodles. Top with the fried eggplant, mushrooms, and curry leaves. Garnish with bean sprouts, cilantro leaves, bird’s eye chilies, lime wedges, and tofu puffs, using a spoon to briefly submerge the tofu puffs in the broth so that they absorb some of the flavor.