Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

freeCodeCamp

Build a Full Stack Movie Streaming App - Go, React, MongoDB, OpenAI

via freeCodeCamp

Overview

Coursera Flash Sale
40% Off Coursera Plus for 3 Months!
Grab it
Learn to develop a comprehensive full-stack movie streaming application with AI-powered recommendations using Go, React, MongoDB, and OpenAI integration. Master backend development with Go and the Gin-Gonic framework, create dynamic user interfaces with React, implement robust data storage solutions with MongoDB, and integrate artificial intelligence features through OpenAI and LangChainGo. Set up your development environment by installing MongoDB, MongoDB Compass GUI, MongoDB Shell, Go programming language, and Visual Studio Code with necessary extensions. Build the backend API by creating movie and user models, implementing CRUD operations for movies, developing user registration and authentication systems with JWT tokens, and establishing secure middleware for route protection. Integrate AI functionality by connecting to OpenAI services through LangChainGo to create intelligent movie recommendation systems and automated movie review updates. Develop the frontend using React by creating responsive user interfaces for the home page, user registration, login functionality, and movie recommendation services, while implementing authentication context and protected routing with react-router-dom. Enhance security by storing access tokens in HTTP-only cookies to prevent XSS attacks and integrate react-player for seamless movie streaming capabilities within the browser. Test your API endpoints using Postman to ensure proper functionality of all CRUD operations and authentication flows. Deploy your complete application to cloud platforms by migrating your MongoDB database to Atlas, deploying the Go backend API to Render, and hosting the React frontend on Vercel for production-ready accessibility.

Syllabus

- 0:00:00 Introduction and Overview of the Course
- 0:10:14 Setup Development Environment
- 0:10:19 Install MongoDB and Compass GUI for MongoDB
- 0:14:05 Install MongoDB Shell
- 0:17:54 Launch Compass, Create and Seed MagicStream MongoDB Database
- 0:23:38 Use MongoDB Shell to Interact with MongoDB Database
- 0:29:42 Install Go Golang on Dev Machine
- 0:34:31 Create Basic Go Application using Command Line Interface and Notepad
- 0:38:45 Install Visual Studio Code on Dev Machine
- 0:42:42 Create Full-stack Project Infrastructure in VSCode
- 0:44:38 Create go.mod file for Go/Gin-Gonic Web API
- 0:47:32 Install Go Extension for Visual Studio Code
- 0:51:00 Start Creation of Code for Go/Gin-Gonic Web API
- 0:51:26 Install Gin-Gonic Gin Web Framework
- 1:06:33 Create Movie Model and GetMovies End Point
- 1:31:01 Create Movie Controller
- 1:33:01 Create GetMovies Gin-Gonic Endpoint Handler Function
- 1:44:20 Create Reusable MongoDB Connection Code in database Package
- 2:16:46 Create GetMovie Endpoint Function Handler
- 2:35:58 Create AddMovie Endpoint Function Handler
- 3:02:34 Install Postman and use Postman to test Post Request to AddMovie Endpoint
- 3:14:41 Create User Model
- 3:44:00 Create RegisterUser Endpoint Handler Function
- 4:20:25 Create Login Functionality
- 5:29:52 Create Middleware Functionality to Validate Incoming Access Tokens
- 5:50:23 Configure Protected and Unprotected Gin gin-gonic Routes
- 6:06:49 Update Movie Review - Engage with openAI through LangChainGo
- 6:34:22 Sign up for Account with openAI
- 6:59:32 Create Movie Recommendation Service Powered by AI
- 8:13:57 Go/Gin-Gonic Best Practices - Minor Code Amendments
- 8:54:51 Create Frontend Code Using React
- 9:02:57 Create UI for Home Page
- 9:59:05 Create Header Component
- 10:24:43 Setup Routes using react-router-dom
- 10:24:58 Create User Registration UI
- 10:56:59 Create Login UI
- 11:10:30 Create Auth Provider and Auth Context Functionality
- 11:39:31 Create UI for Movie Recommendation Service
- 12:05:37 Create UI for Updating Admin Movie Reviews
- 12:38:29 Amend Code so that Access Token is Stored in http-only cookies prevent XSS attacks
- 13:41:01 Using react-player to Play Movies in Browser
- 14:04:27 Deploy full stack Web App to the Cloud
- 14:08:13 Deploy MongoDB to Atlas and Seed Data from Local MongoDB
- 14:18:42 Deploy Go/Gin-Gonic Web API to Render
- 14:35:31 Deploy React Client Code to Vercel
- 14:44:48 Outro

Taught by

freeCodeCamp.org

Reviews

Start your review of Build a Full Stack Movie Streaming App - Go, React, MongoDB, OpenAI

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.