Heat oil in a large nonstick saucepan coated with cooking spray over medium-high heat. Add shallots; sauté 2 minutes. Reduce heat to medium. Add ginger, turmeric, chile, and garlic; cook 1 minute, stirring constantly. Add cabbage, mushroom, and carrot; cook 2 minutes, stirring occasionally.
Stir in water, soy sauce, salt, and coconut milk; bring to a boil. Add tofu. Reduce heat; simmer 5 minutes. Add tomato; simmer 3 minutes. Stir in basil and onions. Serve over rice with lime wedges.