Step 1: You Will Need
Screwdriver or battery drill
Old chisel or door wedge.
Old hard disk (To cannibalise for parts)
Step 2: Disassemble Hard Disk
(Warning: The hard drive is going to be useless after this step. If you don't have an old one to hand, there are places you can find them. I've seen very cheap, old rubbish hard drives for a few pounds each at PC fairs, and also the electronics department of an army surplus depot).
Once you're inside, there should be a few screws securing the magnets and the read write head. Hard disks obviously vary a lot from one manufacturer to the next, but they all have a similar layout and design. It's a fairly straightforward disassembly job to get the magnets and read wirte head loose, then separate them all.
Hard drive magnets are ideal for this project. They're strong, and they're glued very solidly to backplates that already have handy mounting holes. Be careful with them though, because they can hurt your fingers if you're not. Here's a quick demo of the speed and range at which they can snap together:
Step 3: Remove Door, Add Magnet, Rehang Door
Once you've taken the door off, screw one of your magnets into the bottom near the hinge side, as shown below.
Rehanging the door should be fairly easy. Support it with the wedge/chisel while manuvering it into a position where the hinges are more or less aligned properly, then start putting screws back into the holes thy came from. Screw them all in halfway, then you can gradually take turns tightening them and adjusting the position of the door. Just take your time and keep tweaking the position; its unlikely to align perfectly at first. When it's aligned closely enough, the screws will pull the hinges back into the right place.
Step 4: Mark Floor, Fix Second Magnet
Put your pencil against the door, with the point touching the floor. Close the door, and it will mark a curve out, allowing you to align the bottom magnet with path of the one fixed to the door.
Now, decide where you want the door to stay when it's open. I went for less than the maximum travel of the door because I have some shelves in the way.
That's it, you're done! Once you have it fixed down, as long as the magnets are close enough (and you'd need a pretty big gap or heavy door for them to be ineffective), they will catch the door and gently hold it in place.
I've put some videos below to demonstrate the pleasing wobble this creates, and I've also detailed a couple of optional extras in the next step.
Step 5: Extras
There was quite a big gap between the door and the floor. Not enough to make the magnets ineffective, but enough that I decided to increase the power by raising the floor magnet, fixing it through two washers at each end.
Also, since I wanted the door to open as far as possible but not bang against the corner of my shelves, I stuck a semicircle of felt padding to the bottom of the door where it was hitting. I can now throw the door open, and it will hit the shelves then come to a halt over the magnet almost silently.