Upload and watch videos created with Nextjs, Express, and GCP serverless backend.
- User signs in with Google SSO. Minimal metadata(ID,UID) is stored in firebase to associate owners with their data.
- User uploads raw video into GCP Cloud Storage bucket holding raw videos.
- Pub/Sub message is invoked by uploading video, sending message to video processing service
- Serverless backend Cloud Run hosting processing service trancodes video, then uploads to Cloud Storage bucket for processed videos.
- Firebase Firestore will store metadata for videos
- Cloud run hosting our frontend Next.js app will fetch videos from Firestore and return them onto the client for user to view.