Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/suhailkakar/Decentralized-YouTube
An YouTube clone built with React, Solidty and Livepeer
https://github.com/suhailkakar/Decentralized-YouTube
blockchain dapp ethereum ipfs react solidity web3 youtube youtubeclone
Last synced: 3 months ago
JSON representation
An YouTube clone built with React, Solidty and Livepeer
- Host: GitHub
- URL: https://github.com/suhailkakar/Decentralized-YouTube
- Owner: suhailkakar
- License: mit
- Created: 2022-02-07T06:09:52.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-01-10T06:16:24.000Z (10 months ago)
- Last Synced: 2024-06-11T16:53:38.886Z (5 months ago)
- Topics: blockchain, dapp, ethereum, ipfs, react, solidity, web3, youtube, youtubeclone
- Language: TypeScript
- Homepage: https://blog.suhailkakar.com/building-a-full-stack-web3-youtube-clone-with-next-ipfs-the-graph-solidity-and-livepeer
- Size: 2.79 MB
- Stars: 429
- Watchers: 9
- Forks: 93
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-livepeer - OurTube - decentralized YouTube sample app
README
## About The Project
[![Ourtube][product-screenshot]](https://twitter.com/suhailkakar)
OurTube is a YouTube Clone built on top of Polygon network and The Graph, that allows users to create, share and watch videos, without worrying about their privacy.
Here is a complete tutorial on how to build a similar project: https://blog.suhailkakar.com/building-a-full-stack-web3-youtube-clone-with-next-ipfs-the-graph-solidity-and-livepeer
> This is the version 2.0 of this applications, you can find the first verion [here](https://github.com/suhailkakar/Decentralized-YouTube/tree/version-1)
### Built With
- Frontend framework: Next.js
- Smart contracts: Solidity
- Ethereum web client library: Ethers.js
- File storage: IPFS
- Querying data: The Graph
- CSS Framework: TailwindCSS
- Ethereum development environment: Hardhat
- Layer 2 blockchain: Polygon
- Video Infrastructure: Livepeer## Getting Started
To get this application up and and running on your local machine follow these simple steps.
### Prerequisites
You need to have Node.js, NPM and hardhat installed on your computer, before running this project.
### Installation
1. Clone the repo
```sh
git clone https://github.com/suhailkakar/Decentralized-YouTube
```
2. Install NPM packages```sh
npm install
```or
```sh
yarn install
```
3. Create an `.env` file and get an API key from Livepeer studio, Web3 Storage and Imagekit.
```sh
PRIVATE_KEY=""
NEXT_PUBLIC_LIVEPEER_KEY=""
NEXT_PUBLIC_WEB3_STORAGE_KEY=
NEXT_PUBLIC_IMAGEKIT_ID=""
```
4. Compile the smart contract
```sh
npx hardhat compile
```
5. Deploy the smart contract
6. Get your contract address and paste in on `constants/index.ts`7. Deploy subgraph in `indexer` directory by following steps in `indexer/README.md` (optional, since it is already deployed in hosted service)
8. Get subgraph query endpoint after deployment and update it in `constants/index.t`
9. Run the app
```sh
npm start
```## Contributing
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are **greatly appreciated**.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue.
Don't forget to give the project a star! Thanks again!1. Fork the Project
2. Create your Feature Branch (`git checkout -b feature/AmazingFeature`)
3. Commit your Changes (`git commit -m 'Add some AmazingFeature'`)
4. Push to the Branch (`git push origin feature/AmazingFeature`)
5. Open a Pull Request### License
This project is an open source software licensed under the MIT License
[product-screenshot]: https://radicle.community/uploads/default/original/2X/1/1275b4e842a315e9211c8905c16a34116493c301.jpeg