Store your promises in the blockchain and bet some money against it. If you fail, you lose 50% of your bet, otherwise you get 100% back 🤣. Don't worry though, it runs on the Rinkeby testnet, so you won't be playing with any real money.
- Web3
- Solidity (solc)
- React
The development part of this project can be divided into 3 parts.
- Smart contract deployment (on local or test networks)
- Smart contract testing
- Web app development
For deploying on Ganache (GUI version) local test network
# run ganance before this
npm run deploy:local
For deploying on Rinkeby testnet
# export from .env
npm run deploy:testnet
You will have to set up the keys in .env
file. Private key is private key of the address that is deploying and infura project ID is the project ID at Infura.
Run the test script. The following command run tests on the smart contract using Waffle.
npm run build:waffle
# ^ build if smart contract changes or not built already
npm test
Copy the contract ABI and the contract addresses generated by deploy script to lib/sc.js
. Then run the following -
npm run start
Smart contract deployments have already been covered in the previous section.
To deploy the web app, first build it
npm run build
Then deploy it on surge.sh.
npm run deploy:web
These articles helped me to make this project.