Table of Contents
This project aims to show a basic TODO web app connected to a smart contract to keep track of tasks for each user, using the sequence wallet to have a better user experience.
Users can connect their wallet using social or email login, but still being non-custodial and multi-chain.
There are 2 different folders in this project: client & server.
Inside client we have a basic node app with the frontend to communicate with the deployed smart contract.
Inside server we have a basic hardhat structure where you will find the smart contract to deploy.
You do not need to deploy the smart contract again if you don't want to. We have deployed one to Goerli testnet to which the frontend is already pointing at.
For this project you will need to have npm installed and if you plan on deploying the smart contract on your own, you will need to install hardhat.
-
npm
npm install npm@latest -g
-
hardhat
npm install --save-dev hardhat
(To use hardhat after this installation you will need to use npx hardhat
)
Follow this steps to run the app locally and use the already deployed contract
- Clone the repo
git clone https://github.com/your_username_/Project-Name.git
- cd into
client
folder and install NPM packagescd client && npm install
- Start the app
npm start
- Go to your browser and type
http://localhost:3000/
In the server
folder you will find the hardhat project with the smart contract and the deploy scripts.
- Clone the repo
git clone https://github.com/your_username_/Project-Name.git
- cd into
client
folder and install NPM packagescd client && npm install
- Deploy the smart contract following the official tutorial:
https://hardhat.org/tutorial/deploying-to-a-live-network
-
Take the address of the newly deployed contract and change file
./client/src/config.js
adding your newly deployed contract address in the 'TodoContractAddress' variable. -
(OPTIONAL) If you decided to change the smart contract, you may need to put the contract.json file created after the hardhat build in
./client/src/utils/Todo.json
. If you changed a function signature you will need to do this so ethers.js knows how to communicate with your new smart contract. -
Cd into
client
folder and start the appcd client && npm start
-
Go to your browser and type
http://localhost:3000/
Twitter - @0xSequence
Discord - Sequence Discord
Youtube - Sequence Youtube
GitHub - Sequence Github