Dumio is a Video sharing and Social Media Platform similar to YouTube, but runs on Blockchain. Dumio is built for secure, and faster video sharing and broadcasting. Videos uploaded to Dumio are stored in a distributed manner through IPFS, which makes hackers lose their attack targets and makes data more secure.
- Frontend framework: React.js
- Smart contracts: Solidity
- Ethereum web client library: Web3.js
- File storage: IPFS
- CSS Framework: Bootstrap
- Ethereum development environment: Truffle, Ganache
- Layer 2 blockchain: Polygon
To get this application up and and running on your local machine follow these simple steps.
You need to have Node.js, NPM and hardhat installed on your computer, before running this project.
-
Clone the repo
git clone https://github.com/roshangeorge97/Dumio
-
Change Directory
cd Dumio
-
Install NPM packages
npm install
or
yarn install
-
Create an
.env
file and get an API key from Livepeer studio, Web3 Storage and Imagekit.MNEMONIC=
-
Migrate the smart contract
For Ganache:
truffle migrate
For Mumbai Testnet:
truffle migrate --network matic
Note : When Deploying Polygon Network ie; Mumbai Testnet, you would get a Polling Error, so its recommended to use a Custom RPC
step 1 : Sign up to https://rpc.maticvigil.com/ and Create an App server
step 2 : Copy the Custom RPC Url and Paste in the
.env
fileMumbai_Testnet_RPC_URL=
-
start IPFS node
Note : you must Install IPFS in your system before starting the IPFS Node.
IPFS installation :
$ npm install -g ipfs
Run the Node:
$ jsipfs daemon
-
Run the app
npm run start