Take some soy beans and soak them in water overnight.
Take these soaked beans and place them in a blender with some fresh water. Grind them up. Take this stuff and pour through several layers of cheesecloth. Return the pulp to the blender, add more water and grind some more. Pour through several layers of cheesecloth.
Take the soy "milk" that you have made and boil it. Turn off the heat and add vinegar. This should curdle it and you can wrap it in cheesecloth (clean, not the cloth you used to strain) and weigh it down with a pot of water. At this point you can treat it just like cheese except that it should always be kept in water.
You will need to experiment with it to see how long it takes to get firm. The longer it is pressed the firmer it gets. If it isn't strained well the tofu will end up crumbly.
Hope this helps,
Random recipe of the day