This repository hosts a variety of smart contracts for a DAO (Decentralized Autonomous Organisation) focussing on delivering a decentralized p2p-lending platform on the Ethereum Blockchain. This may very well develop into something completely different based on the direction taken by the DAO in the future. We are as excited as you are! ;-)
A decentralized, smart contract based platform for p2p-lending on the Ethereum Blockchain can play the role of a bank in the process of lending money to one or more beneficiaries. The open ecosystem of the p2p-lending platform has the potential to offer cheaper lending contracts than traditional centralized institutions, while also enabling people all over the world to profit from a fair and transparent portfolio of products.
To solve multiple challenges within such a substantial system, we are conductiong extensive research into Ethereum and other potential smart contract platforms as well as continue developing a modular system based on components solving those challenges one by one. The most pressing challenges to solve for such a system include:
- Proof of Identity
- Decentralized management and progression of the ecosystem by a DAO
- Staying within the bounds of Ethereum
- Incentivization of the DAO ecosystem and its continuous use
- Building financially profitable and inclusive products
- Accessibility and Usability of the p2p-lending plattform and ecosystem
To get a local copy up and running follow these steps.
These are the requisites you need, in order to use the software and instructions, on how to install them.
-
- macOS:
- Install Homebrew:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
- Update Homebrew:
brew update
- Check if Homebrew is ready to brew:
brew doctor
- Install Node.js:
brew install node
- Test that Node.js was installed by running:
node --version
- Install Homebrew:
- Windows:
- Install Chocolatey:
- via cmd.exe:
@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"
- via PowerShell.exe:
Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
- via cmd.exe:
- Install Node.js:
choco install nodejs
- Test that Node.js was installed by running:
node --version
- Install Chocolatey:
- macOS:
-
-
Install npm:
npm install npm -g
-
Test that npm was installed by running:
npm --version
-
-
- Install Truffle:
npm install truffle -g
- Test that truffle was installed by running:
truffle version
- Install Truffle:
-
Clone the repo
git clone https://github.com/adorsys/p2p-lending.git
-
Run Ganache on port 8545
Ganache -> Settings -> Server -> Port Number -> 8545
-
Install dependencies
npm install
-
Compile Smart Contracts
truffle compile
-
Deploy Smart Contracts to local blockchain
npm run migrate:dev
-
Switch to frontend folder
cd frontend
-
Install frontend dependencies
npm install
-
Start frontend
npm start
-
Open the DApp in your favorite browser
localhost:8080