Pat dry 14 - 16 ounces tofu and pull it apart into bite-size pieces with your hands.
Heat 2 tablespoons olive oil in a large skillet or Dutch oven.Add 1 medium onion (chopped) and sauté it for 3 minutes. Add 3 cloves garlic1 inch ginger (both grated), 2 teaspoons curry powder, 2 teaspoons ground coriander, 1 teaspoon ground cumin, 1 teaspoon turmeric powder, ¼ teaspoon red pepper flakes, and sauté for 1 more minute.If the pan gets dry, add 2 tablespoons of water.
Add 1 cup vegetable stock, the tofu pieces, 12 ounces cauliflower florets, 1 can (15-ounce) crushed tomatoes, 1 can (14-ounce) coconut milk.Season with 1 teaspoon salt and ⅛ teaspoon black pepper.
Stir then let it simmer for about 20 minutes or until the vegetables are cooked and the curry is creamy.
A couple of minutes before turning the heat off, stir in 1 teaspoon garam masala. Taste and adjust for salt.Serve with a squeeze of lemon and fresh cilantro next to rice or naan. Optionally, top with a few toasted cashews for crunch.