Skip to content

Dappers24/ThreeTube

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

61 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

ThreeTube

ThreeTube is a decentralized streaming platform that redefines media content ownership, empowering both creators and viewers. Built on blockchain technology, it prioritizes content security, user control, and fair monetization, while fostering a unique, engaging experience centered around community participation and rewards.

Complete Idea with a Revenue Model

Here's a ppt about the entire project

Currently implemented features include video upload, decentralized storage, wallet-based access, indexing via The Graph, and Livepeer-powered live streaming.

πŸ’» TechStack Used

  • JavaScript
  • Solidity
  • ReactJS
  • TailwindCSS
  • NodeJS
  • Web3.js
  • MongoDB
  • MetaMask
  • IPFS
  • PinataSDK
  • FFMPEG
  • GraphQL
  • Websockets
  • Ganache
  • Livepeer

Prerequisites

Node.js should be installed on your system

Create two folders in the server : uploads and videos

Go inside the client and server folder and do install a npm dependencies

cd client
cd server
npm install

FFMPEG should be downloaded on your local system

A MetaMask Account with some sepolia in sepolia's test network.

An account on IPFS and PinataSDK

Either MongoDB should be available on your local or make a account in MongoAtlas to use it without dowloading

πŸŽͺ Setting up .env Variables

First we need to configure a .env file for secret variables used

You need to add following varaibles in your .env file in the server folder:

1. DB = //This should be the connection URL of your MongoDB database 
2. NODE_ENV = //Set this as 'development' for running the project locally
3. PINATA_API_KEY = //You get this on setting up an account on pinataSDK
4. PINATA_SECRET_API_KEY = //You get this on setting up an account on pinataSDK
5. GATEWAY_URL= //You get this on setting up an account on pinataSDK
6. PINATA_JWT= //You get this on setting up an account on pinataSDK

πŸ–ΌοΈ Some glimpse of the platform

Landing Page



After Authenticating with MetaMask



Adding a video



Playing a video



πŸ› Bug Reporting

Feel free to open an issue on GitHub if you find any bug.


⭐ Feature Suggestion

Feel free to open an issue on GitHub if you have feature idea to be added πŸ™Œ.


🧩 Team

Thanks for visiting my repository 😊!! Please give a star ⭐ if you liked our project.

About

A Web3 based Video Streaming Application

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 5