Skip to content

Skilledgamer101/youtube-clone

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

YouTube Clone

A video uploading and streaming service similar to YouTube.

Table of Contents
  1. About The Project
  2. Contact
  3. Acknowledgments

About The Project

YT Clone Homepage

This project mimics core features present in YouTube. It allows users to sign in via Google, upload videos, and view other uploaded videos. I primarily built it as a learning experience for full stack app development.

(back to top)

Built With

  • Next
  • React
  • TypeScript
  • Express
  • Docker
  • FFmpeg
  • Firebase
  • GCloud

(back to top)

Architecture

Architecture Layout

  1. Cloud Storage stores the raw and processed videos uploaded by users.
  2. Pub/Sub sends messages to the video processing service.
  3. Cloud Run hosts a non-public video processing service. After it transcodes videos, they are uploaded to Cloud Storage.
  4. Cloud Firestore stores the metadata for the videos.
  5. Cloud Run hosts a Next.js app, which serves as the Youtube web client.
  6. The Next.js app makes API calls to Firebase Functions.
  7. Firebase Functions fetches videos from Cloud Firestore and returns them.

Demo

https://yt-web-client-227167548795.us-central1.run.app/

(back to top)

Contact

Mansoor Lunawadi - mansoorlunawadi@yahoo.ca

Project Link: https://github.com/Skilledgamer101/youtube-clone

(back to top)

Acknowledgments

  • NeetCode
    I followed the Full Stack App Development course offered on NeetCode.

(back to top)

About

YouTube clone application using TypeScript, Next.js, Express.js, Docker, FFmpeg, Firebase Auth, Firebase Functions, Firebase Firestore, Google Cloud Storage, Google Cloud Pub/Sub, Google Cloud Run

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors