Building a Click-to-Load YouTube Video with JavaScript | Project Part 10

In this stream I worked on the Practice Layouts portfolio site with vanilla HTML, CSS, and JavaScript. The main focus was adding a featured video module to the project grid while keeping the JavaScript modular and avoiding repeated requests for the same `data.json` file. Along the way, I worked through a practical ES module refactor, compared default and named exports, used AI as a debugging and explanation partner, built dynamic DOM markup for a YouTube thumbnail and play button, and finished the click-to-load video interaction with CSS positioning and a fade transition. #html #css #javascript ✅ Topics covered: Fetching `data.json` once and passing data into modules Using default exports vs named exports Passing data into functions and understanding scope Dynamically creating article, figure, image, button, SVG, and iframe elements Building a click-to-load YouTube embed Avoiding iframe loading on page load Styling a responsive video container with absolute positioning Using `z-index`, `setTimeout`, and opacity transitions Saving markup snippets while working in vanilla JavaScript Planning load more, filtering, sidebar counts, forms, and deployment This video is for front-end developers who are learning vanilla JavaScript, ES modules, DOM rendering, or practical portfolio project architecture. Subscribe for more live coding with HTML, CSS, JavaScript, accessibility, deployment, and real-world frontend workflows. 🟣 REPO: https://github.com/angelajholden/prac... 🔵 CODE REVIEWS: https://angelajholden.com/consulting 🔵 EMAIL: [email protected] 🟢 SPONSOR: https://github.com/sponsors/angelajho... 🟢 DONATE: https://www.paypal.me/angelajholden 📚 Chapters 00:00:00 Starting Soon 00:01:36 Intro 00:06:50 Project Overview and Video Goal 00:11:11 Returning to Yesterday's Code 00:11:53 Refactoring Shared Data Fetching 00:28:03 Understanding ES Module Exports 00:36:49 Preparing the Video Snippet 00:42:12 Passing Data Into Functions 00:46:03 Learning Web Development Basics 00:54:36 Building the Video Markup 00:58:58 Adapting Click-To-Load Video 01:21:11 Creating Click-To-Load Behavior 01:35:52 Planning Remaining Project Work 01:40:39 Styling the Video Container 01:54:38 AI Lessons and Commit 01:56:33 Planning the Deployment Workflow

Building a Header and Hero with Vanilla CSS | Project Part 3
▶︎

Building a Header and Hero with Vanilla CSS | Project Part 3

Fetching and Rendering JSON with Vanilla JavaScript | Project Part 8
▶︎

Fetching and Rendering JSON with Vanilla JavaScript | Project Part 8

Mobile Menu JavaScript and Scroll Behavior | Project Part 6
▶︎

Mobile Menu JavaScript and Scroll Behavior | Project Part 6

How to Start Coding | Programming for Beginners | Learn Coding | Intellipaat
▶︎

How to Start Coding | Programming for Beginners | Learn Coding | Intellipaat

I quit my software developer job without another one lined up... Here's why
▶︎

I quit my software developer job without another one lined up... Here's why

Full Archon Guide - Build AI Coding Harnesses That Actually Ship (LIVE)
▶︎

Full Archon Guide - Build AI Coding Harnesses That Actually Ship (LIVE)

🚨 سرّ عجيب في القضاء والقدر! سيغيّر نظرتك للحياة ويمنحك راحة عجيبة 😱 | الشيخ طاهر ضروي
▶︎

🚨 سرّ عجيب في القضاء والقدر! سيغيّر نظرتك للحياة ويمنحك راحة عجيبة 😱 | الشيخ طاهر ضروي

Deploy a Static Site with GitHub Actions and DigitalOcean | Project Part 11
▶︎

Deploy a Static Site with GitHub Actions and DigitalOcean | Project Part 11

Jfrog | Jfrog Artifactory | Jfrog Artifactory Tutorial | Artifactory Tutorial | Intellipaat
▶︎

Jfrog | Jfrog Artifactory | Jfrog Artifactory Tutorial | Artifactory Tutorial | Intellipaat

The Frequency of God 963 Hz - Attract love, protection, wealth, miracles and blessings without limit
▶︎

The Frequency of God 963 Hz - Attract love, protection, wealth, miracles and blessings without limit

Building JavaScript Filters for a Frontend Project | Project Part 13
▶︎

Building JavaScript Filters for a Frontend Project | Project Part 13

🔥 GOD UNLEASHES the Truth | Psalms 23, 35, 91 and 112 To Break Curses and Activate Abundance
▶︎

🔥 GOD UNLEASHES the Truth | Psalms 23, 35, 91 and 112 To Break Curses and Activate Abundance

Fixing a Mobile Header with CSS and Z-Index | Project Part 7
▶︎

Fixing a Mobile Header with CSS and Z-Index | Project Part 7

The French Do Not Care About Work
▶︎

The French Do Not Care About Work

LIVE | Real-time Dashboard UI Build | HTML CSS JavaScript | Part 4
▶︎

LIVE | Real-time Dashboard UI Build | HTML CSS JavaScript | Part 4

Static Site QA: 404 Pages, Styling, and Deployment | Project Part 12
▶︎

Static Site QA: 404 Pages, Styling, and Deployment | Project Part 12

Building Portfolio Card Styles with Vanilla CSS | Project Part 4
▶︎

Building Portfolio Card Styles with Vanilla CSS | Project Part 4

Building Portfolio Cards from JSON with JavaScript | Project Part 9
▶︎

Building Portfolio Cards from JSON with JavaScript | Project Part 9

Building an Accessible Portfolio Layout with HTML | Project Part 1
▶︎

Building an Accessible Portfolio Layout with HTML | Project Part 1

😱 If you understand this lesson... you might get rid of anxiety, obsessive thoughts, and dissatis...
▶︎

😱 If you understand this lesson... you might get rid of anxiety, obsessive thoughts, and dissatis...