Preheat oven to 375°Fs.
Slice zucchini lengthwise into very thin slices. Lay the slices out on a towel and sprinkle them lightly with sea salt. Allow sit for 10-15 minutes, and then blot dry.
To make the sauce, combine all ingredients in a saucepan over medium heat and cook for about 10 minutes.
Crumble the tofu into a food processer fitted with an s-blade. Add the lemon juice, garlic, and nutritional yeast and blend until the mixture is thick and looks like ricotta cheese. Add the spinach and pulse until it’s mixed in.
In a large pan over medium heat, sauté the onion in the olive oil for about five minutes, until translucent and lightly browned. Add the garlic and cook for another minute or two, until the garlic is fragrant. Add the mushrooms to the pan and cook for about 5 minutes, until the mushrooms have softened and browned slightly.
To assemble lasagna, spread 1/4 of the tomato sauce into the bottom of a casserole dish. Then layer 1/3 the zucchini slices, 1/2 the tofu ricotta mixture, half of the mushrooms followed by another ¼ of the sauce. Repeat by layering the another 1/3 of the zucchini slices, the rest of the tofu ricotta mixture and mushrooms and another ¼ of the sauce. Top with the remaining zucchini slices and the rest of the sauce.
Cover with foil and bake for 30 minutes. Remove the foil, sprinkle with vegan cheese, if using, and bake for 15 more minutes.