All a wish list or a gift registry is... is an eCart that is stored in a database. Should be as simple as designing the database to store it and adding a second cart to the page to allow people to add to it and then adding the server behavior to store it in the database. You would of course need user registration and login to keep track of the user whose registry or wish list it is in the database so you can retrieve it properly on login.