YouTube Clone – T3 Stack Tutorial (Next.js, TypeScript, Tailwind CSS)
Learn how to use the T3 Stack (Next.js, Typescript, TRPC, Next Auth, Prisma, and Tailwind CSS) to build a full stack video streaming app similar to YouTube. You will learn how each technology comes together to build an end-to-end web application.
CLOUDINARY DATA: https://drive.google.com/drive/folders/1JTj1JJSCxtRvNfxRSSgXCJePkYW6vBPV
FIGMA DESIGN: https://www.figma.com/file/Bkz0ewKqWyIOCt2sewUnhW/Vidchill---Design?type=design&node-id=48-33046&mode=design
GITHUB REPO: https://github.com/jeromemccree/vidchill_tutorial
DEPLOYED APP: https://www.vidchill.org/
✏️ Course created by @ProgrammingWithJerome
❤️ Try interactive Frontend courses we love, right in your browser: https://scrimba.com/freeCodeCamp-Frontend (Made possible by a grant from our friends at Scrimba)
⭐️ Contents ⭐️
⌨️ (0:00:27) Intro
⌨️ (0:00:50) Demo
⌨️ (0:12:05) Tech Stack
⌨️ (0:20:20) Setup
⌨️ (0:38:14) Write Prisma Models
⌨️ (0:55:27) Seed Database
⌨️ (1:22:27) Adding Tailwind
⌨️ (1:25:12) Button Component
⌨️ (1:38:27) Navbar Component
⌨️ (2:26:52) Sidebar Component
⌨️ (2:53:42) Layout Component and mobile sidebar
⌨️ (3:34:00) Mobile Footer Component
⌨️ (3:45:27) Home Page
⌨️ (3:57:47) Error/Loading Message Component
⌨️ (4:12:27) MultiColumnVideos Component
⌨️ (4:36:27) Search Page
⌨️ (4:50:27) Video Page Begin
⌨️ (5:45:27) Build Follow Button
⌨️ (6:09:23) Build Like and Dislike Button
⌨️ (6:58:22) Description Component
⌨️ (7:12:12) Comment Component
⌨️ (7:46:57) Save Video Button
⌨️ (8:41:17) Profile Header Component
⌨️ (9:21:27) Profile Videos Page
⌨️ (9:33:47) Profile playlist Page
⌨️ (10:02:47) Playlist Page
⌨️ (10:33:48) History and Like Videos Page
⌨️ (10:42:01) Profile Announcements Page
⌨️ (11:07:57) Like and Dislike Announcement Buttons
⌨️ (11:28:27) Add announcements
⌨️ (11:40:37) Profile Following Page
⌨️ (12:03:22) Start of Dashboard Page
⌨️ (12:39:47) Publish Button
⌨️ (13:00:57) Delete Button
⌨️ (13:33:27) Edit Button
⌨️ (14:25:36) Upload Button
🎉 Thanks to our Champion and Spo
Watch on YouTube ↗
(saves to browser)
Sign in to unlock AI tutor explanation · ⚡30
Playlist
Uploads from freeCodeCamp.org · freeCodeCamp.org · 0 of 60
← Previous
Next →
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
React: Production Server Setup Part 2 - Live Coding with Jesse
freeCodeCamp.org
cookies vs localStorage vs sessionStorage - Beau teaches JavaScript
freeCodeCamp.org
Browser history tutorial - Beau teaches JavaScript
freeCodeCamp.org
Graph Data Structure Intro (inc. adjacency list, adjacency matrix, incidence matrix)
freeCodeCamp.org
React: Parameterized Routing with Next.js - Live Coding with Jesse
freeCodeCamp.org
React: Dealing with jQuery Issues - Live Coding with Jesse
freeCodeCamp.org
setInterval and setTimeout: timing events - Beau teaches JavaScript
freeCodeCamp.org
Browser and Device Testing - Live Coding with Jesse
freeCodeCamp.org
Last Minute Updates - Live Coding with Jesse
freeCodeCamp.org
Post Launch Updates - Live Coding with Jesse
freeCodeCamp.org
React: Setting Up Google Analytics - Live Coding with Jesse
freeCodeCamp.org
React: Masonry Layout - Live Coding with Jesse
freeCodeCamp.org
Load Balancing Digital Ocean Droplets - Live Coding with Jesse
freeCodeCamp.org
try, catch, finally, throw - error handling in JavaScript
freeCodeCamp.org
Load Balancing: SSL Passthrough Setup - Live Coding with Jesse
freeCodeCamp.org
Graphs: breadth-first search - Beau teaches JavaScript
freeCodeCamp.org
React: Masonry Layout Part 2 - Live Coding with Jesse
freeCodeCamp.org
React: WordPress API Live Search - Live Coding with Jesse
freeCodeCamp.org
Creating WordPress Custom Post Types - Live Coding With Jesse
freeCodeCamp.org
Dates - Beau teaches JavaScript
freeCodeCamp.org
Miscellaneous Front End Updates - Live Coding with Jesse
freeCodeCamp.org
Merging a Pull Request from GitHub - Live Coding with Jesse
freeCodeCamp.org
React + Prettier + Standard JS - Live Coding with Jesse
freeCodeCamp.org
React: Sortable Responsive Table - Live Coding with Jesse
freeCodeCamp.org
Geolocation Sorting by Distance - Live Coding with Jesse
freeCodeCamp.org
Tradeoff Matrix - Agile Software Development
freeCodeCamp.org
The Definition of Ready - Agile Software Development
freeCodeCamp.org
Getting first React job without experience - Ask Preethi
freeCodeCamp.org
React: Google Analytics Click Tracking - Live Coding with Jesse
freeCodeCamp.org
Submitting a PR to an Open Source Project - Live Coding with Jesse
freeCodeCamp.org
Should I go back to school to get CS degree? - Ask Preethi
freeCodeCamp.org
Hero Section CSS Changes - Live Coding with Jesse
freeCodeCamp.org
Working Agreement - Agile Software Development
freeCodeCamp.org
A day at Pennybox with Co-Founder Reji Eapen
freeCodeCamp.org
React: Sorting and Filtering Data - Live Coding with Jesse
freeCodeCamp.org
React: Sorting and Filtering Data Part 2 - Live Coding with Jesse
freeCodeCamp.org
React: Building a New UI - Live Coding with Jesse
freeCodeCamp.org
Definition of Done - Agile Software Development
freeCodeCamp.org
Getting started with jQuery (tutorial) - Beau teaches JavaScript
freeCodeCamp.org
Making a React Blog with WordPress Content - Live Coding with Jesse
freeCodeCamp.org
React, NextJS, CSS - Live Coding with Jesse
freeCodeCamp.org
jQuery events - Beau teaches JavaScript
freeCodeCamp.org
React/NextJS Routing and WordPress API Custom Types - Live Coding with Jesse
freeCodeCamp.org
React: Working with API Data - Live Coding with Jesse
freeCodeCamp.org
React: Refactoring Components - Live Streaming with Jesse
freeCodeCamp.org
jQuery effects - Beau teaches JavaScript
freeCodeCamp.org
More React Refactoring - Live Coding with Jesse
freeCodeCamp.org
animate in jQuery - Beau teaches JavaScript
freeCodeCamp.org
"Finishing" My React Site - Live Coding with Jesse
freeCodeCamp.org
Starting a New React Project (P2D1) - Live Coding with Jesse
freeCodeCamp.org
React Project 2 Day 2: Learning Material UI - Live Coding with Jesse
freeCodeCamp.org
The Agile Manifesto - Agile Software Development
freeCodeCamp.org
jQuery: get and set with http, text, val, and attr - Beau teaches JavaScript
freeCodeCamp.org
React Project 2 Day 3 - Live Coding with Jesse
freeCodeCamp.org
The INVEST approach to product backlog items
freeCodeCamp.org
React Project 2 Day 4 - Live Coding with Jesse
freeCodeCamp.org
Chickens and Pigs - Agile Software Development
freeCodeCamp.org
React Project 2 Day 5 - Live Coding with Jesse
freeCodeCamp.org
jQuery: add and remove DOM elements - Beau teaches JavaScript
freeCodeCamp.org
React Project 2 Day 6 - Live Coding with Jesse
freeCodeCamp.org
More on: LLM Foundations
View skill →Related AI Lessons
🎓
Tutor Explanation
DeepCamp AI