Make the tofu marinade
Mix all the marinade ingredients together. Cut the tofu into 1.5cm (about three quarters of an inch) cubes. Put the tofu into a freezer bag, pour over the marinade, and leave it for at least 2 hours, but preferably overnight.
Make the pasta
Mix together all of the pasta ingredients. It will be quite dry and stiff. Tip it all out onto a worktop and knead for 10 minutes until the dough is silky and smooth. Wrap the dough in plastic film and leave it to rest for half an hour.
Assemble the ravioli
Use a pasta machine or a rolling pin and elbow grease to roll your pasta into thin sheets - about 1-2mm will be okay. You can make ravioli in any shape you want - squares or circles are most common. Use a pastry cutter or steel ruler to cut out your shapes.
Place a bit of spinach leaf on each disc or square, then a chunk of tofu, and a bit more spinach on top. Moisten the edge of the bottom piece of pasta with water, place another piece of pasta on top and press firmly all around the edge to make a good seal. Lift up the edges and sort of stick them to the sides of the raviolo.
Place the ravioli on sheets of kitchen paper to dry out a little - you may need to turn them a few times to make sure they're not sticking to the paper.
Make the sauce
Peel and finely chop the onion, and mince the garlic. Heat some oil in a frying pan on medium heat and cook the onions and garlic for a few minutes until they are softened but not browned. Add the passata (or you could use a can of chopped tomatoes if you wish), and cook for a few more minutes. Now add the pepper and basil. Let them cook in for a few minutes and taste the sauce. Sometimes, tomatoes can be quite acidic and bitter. If this is the case, you can neutralize the acidity by adding a tiny bit of bicarbonate of soda. Taste it again and add salt and maybe a bit of sugar to get a nicely balanced flavour.
In a blender or food processor, blend the sauce until it is smooth. If you want an extra smooth sauce, press it through a fine sieve using the back of a spoon.
Cook the ravioli
Bring a large pan of salted water to a vigorous boil. I find that adding a bit of oil to the water stops the ravioli from sticking together. Pop the ravioli in and cook for 3 minutes. Drain and serve with tomato sauce and a salad.