This project is meant to provide a decentralised platform for sharing/renting ones so as to eliminate the problems caused by the centralised counterparts (like lack of trust, transparency, etc).
-
Create a virtual environment using
virtualenv env
on windows orpython3 -m venv env
on linux. -
Activate the virtual environment by using
source env/Scripts/activate
on windows orsource env/bin/activate
on linux. -
cd to the blockchain directory and Install the python dependencies using
pip install -r requirements.txt
If it doesn't work manually install
brownie
usingpip install eth-brownie
-
Install
Ganache
from https://trufflesuite.com/ganache/ -
Install
Metamask
from Chrome Web Store. -
Install
node
for running the react app. -
Add ganache gui to brownie networks using the following command
brownie networks add Ethereum ganache-local host=http://127.0.0.1:7545 chainid=5777
Use the deploy.sh
script in the scripts
folder to deploy the smart contracts and run the react app using the following command
bash scripts/deploy.sh
What this script essentially does is:
- Compile the smart contracts
- Deploy them to the ganache GUI network which we added.
- Copy the addresses on which the contracts are deployed and paste them in the .env file for the react app.
- Copy the contracts' ABI files to the react app.
- Starts the React server.
Since the script is really crude and I designed it mainly to work on my machine, if it fails to run on your machine or if it produces incorrecct results, do all the steps mentioned above manually.
- Refactor the code.
- Create class/sequence diagrams.
- Create report/ppt
- Deploy the contracts on ethereum test nets (ropsten/rinkeby) and test them.
- Improve the UI.
- Add a login feature.
- Add a server to allow video calls betwwen the owner and rentee.
- Use the server's data to predict people's emotions and hence give them better reccomendations on customers.