This project is adopted from the truffle tutorial project petshop. It is a beginners project that shows people how to create smart contracts on the ethereum blockchain network and how to let it interact with the react native app that they include.
In the project you first begin with making a smart contract that will handle the process of adoption through the blockchain. It will also show you how to make variables and arrays that will hold important information about the user and which dog he/she selected.
Next you will learn how to test your project so that you don't run into errors later when you publish the smart contract to the test or main blockchain.
Lastly you will finish the project by learning how to use the web3 protocal(allows any user to connect to the ethereum blockchain within their browser) and how to interact with the smart contract that you made, tested and published.
One edit I made to the project is when the owner of the pet is on the website instead of seeing success button like the tutorial tells you to put. The owner sees the owner button at the bottom left.
Another edit I made was I gave the user the ability to return their pet if they didn't believe the pet fit into the family. First I editted the smart contract. Next I compiled, migrated, and test the smart contract on the test network. Lastly I made changes to the react native app so that the user could press a button and send back their pet.