• Storing any media on the blockchain is so costly, hence DTube solves this problem by storing IPFS video hashes to the blockchain.
• On DTube Nobody can take down your video.
• It's green as compared to the energy consumption of centralized servers.
• It's ad-free! Now you can watch videos without those annoying ads, this platform treats you as a "user" not the "product".
Adding video to IPFS: https://github.com/AkhileshThite/DTube/blob/83ada70f7d64ddebb445b8b211762f32e17fe52a/src/components/App.js#L81
Displaying video on the front-end: https://github.com/AkhileshThite/DTube/blob/83ada70f7d64ddebb445b8b211762f32e17fe52a/src/components/Main.js#L16
Hosted IPFS link of the DApp: https://ipfs.fleek.co/ipfs/QmYTxfY9jobuRW1d9WcwCvbmgXeJWdCAPQndyx6i6Qi7nZ/
Video examples: https://ipfs.infura.io/ipfs/QmP9FpX6LHGQQgeoJJmR3hGFCvr3qgSEjjwEpRi8MzVnz2
Matic Mumbai Test Network
Rinkeby Test Network
Ropsten Test Network
Goerli Test Network
• Updating the smart contracts with more features such as adding descriptions & links to the videos.
• Improving speed and overall performance with large video files.
• Improving overall UI.
• "To make the whole platform decentralized"
It was challenging to deploy the whole DTube app to the IPFS. After a lot of experimentation with IPFS, I found that I cannot update/modify the project with the same IPFS hash.
After searching online, I landed on "Fleek" IPFS hosting platform where you can deploy the project, assign the domain, and update the project by simply connecting the GitHub repository.
• Solidity version issues: Every version had syntax differences. Everything worked fine on version 0.5.0.
• Matic TestNet error:
Error:
*** Deployment Failed ***
"Migrations" -- only replay-protected (EIP-155) transactions allowed over RPC.
Fix:
Fixed this problem by upgrading @truffle/hdwallet-provider version to 1.4.0.
Discussion