GithubHelp home page GithubHelp logo

karan0009 / dtube Goto Github PK

View Code? Open in Web Editor NEW

This project forked from akhileshthite/dtube

0.0 0.0 0.0 4.79 MB

Decentralized video sharing & social media platform on Ethereum blockchain.

Home Page: https://dtube-eth.on.fleek.co

License: MIT License

JavaScript 82.11% CSS 3.38% HTML 8.51% Solidity 6.00%

dtube's Introduction

DTube

Decentralized video sharing & social media platform on Ethereum blockchain.

Website: https://dtube-eth.on.fleek.co

visitors GitHub release

Contracts

About

โš ๏ธ Use this DApp for educational purposes only! DTube is not responsible for the harm caused by the content you're uploading.

DTube uploads the video files to IPFS by using web3.storage and stores those IPFS CIDs to the blockchain network. Read the step-by-step tutorial ๐Ÿ“ "Build a Social Media dApp & Deploy it on Polygon" to learn how to BUIDL it from scratch. If you have any queries, then please create a discussion thread.

This DApp is inspired by the Dapp University YouTube channel.

Demo

Development instructions

Installation & setup

Make sure you have truffle installed on your computer.

# Install Truffle globally
npm install -g truffle
  • Ensure you create an .env file in root directory. Then to access the Ethereum network/node, create a project on infura and copy-paste the infura project-id url in .env with a variable name REACT_APP_INFURA_RINKEBY or any network you like.
REACT_APP_INFURA_RINKEBY=https://rinkeby.infura.io/v3/YOUR_PROJECT_ID
  • Paste the 12 word Secret Recovery Phrase of your (preferably newly generated and testnet-only) MetaMask wallet in .env with the variable name REACT_APP_MNEMONIC. This will be loaded by truffle at runtime, and the environment variable can then be accessed with process.env.REACT_APP_MNEMONIC.
REACT_APP_MNEMONIC=for example put your twelve word BIP39 secret recovery phrase here
  • For development and testing, you have to create your own web3.storage API token. To do that, login to web3.storage -> create a new API token -> copy the API token.

Then create a .env file in the root directory.

REACT_APP_API_TOKEN=PASTE_YOUR_API_TOKEN

OR

To develop on ganache blockchain, open ganache and import the accounts by adding your ganache private keys in MetaMask.

$ ganache-cli

Deployment

To deploy the smart contracts on blockchain networks, follow the given truffle command below.

# truffle migrate --network NETWORK_NAME
truffle migrate --network rinkeby

# --reset: Run all migrations from the beginning, instead of running from the last completed migration.

For more information, read truffle docs.

React client

Start react app.

npm start
Starting the development server...

๐Ÿ“Œ Note: I cannot update this repo (main-branch) with react hooks because the initial educational tutorial was written with react classes. However, if you want to work on this issue, then please fork and push your changes to react-hooks branch and send a pull request for the same.

License

DTube is licensed under the MIT license.


Hope you've learned something new. Don't forget to leave a ๐ŸŒŸ and twitter

dtube's People

Contributors

akhileshthite avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.