The Web Developer Bootcamp 2022

COMPLETELY REDONE – The only course you need to learn web development – HTML, CSS, JS, Node, and More!
The Web Developer Bootcamp 2022
File Size :
57.87 GB
Total length :
63h 46m



Colt Steele


Last update

Last updated 7/2022



The Web Developer Bootcamp 2022

What you’ll learn

The ins and outs of HTML5, CSS3, and Modern JavaScript for 2021
Make REAL web applications using cutting-edge technologies
Create responsive, accessible, and beautiful layouts
Recognize and prevent common security exploits like SQL-Injection & XSS
Continue to learn and grow as a developer, long after the course ends
Create a blog application from scratch using Node, Express, and MongoDB.
Create a complicated yelp-like application from scratch
Deploy your applications and work with cloud databases
Create static HTML and CSS portfolio sites and landing pages
Think like a developer. Become an expert at Googling code questions!
Create complex HTML forms with validations
Implement full authentication from scratch!
Use CSS Frameworks including Bootstrap 5, Semantic UI, and Bulma
Implement responsive navbars on websites
Use JavaScript variables, conditionals, loops, functions, arrays, and objects
Write Javascript functions, and understand scope and higher order functions
Master the “weird” parts of JavaScript
Create full-stack web applications from scratch
Manipulate the DOM with vanilla JS
Write JavaScript based browser games
Use Postman to monitor and test APIs
Use NodeJS to write server-side JavaScript
Write complex web apps with multiple models and data associations
Write a REAL application using everything in the course
Use Express and MongoDB to create full-stack JS applications
Use common JS data structures like Arrays and Objects
Master the command line interface
Use NPM to install all sorts of useful packages
Understand the ins and outs of HTTP requests
Create your own Node modules
Make a beautiful, responsive photographer’s portfolio page
Create a beautiful, responsive landing page for a startup
Implement user authentication
Create a beautiful animated todo list application
Create single page applications with AJAX

The Web Developer Bootcamp 2022


Have a computer with Internet
Be ready to learn an insane amount of awesome stuff
Prepare to build real web apps!
Brace yourself for stupid jokes about my dog Rusty


COMPLETELY REDONE WITH OVER 500 BRAND NEW VIDEOS!Hi! Welcome to the brand new version of The Web Developer Bootcamp, Udemy’s most popular web development course.  This course was just completely overhauled to prepare students for the 2022 job market, with over 60 hours of brand new content. This is the only course you need to learn web development. There are a lot of options for online developer training, but this course is without a doubt the most comprehensive and effective on the market.  Here’s why:This is the only Udemy course taught by a professional bootcamp instructor with a track record of success.94% of my in-person bootcamp students go on to get full-time developer jobs. Most of them are complete beginners when I start working with them.The previous 2 bootcamp programs that I taught cost $14,000 and $21,000.  This course is just as comprehensive but with brand new content for a fraction of the price.Everything I cover is up-to-date and relevant to 2022’s developer job market. This course does not cut any corners. I just spent 8 months redoing this behemoth of a course! We build 13+ projects, including a gigantic production application called YelpCamp. No other course walks you through the creation of such a substantial application.The course is constantly updated with new content, projects, and modules.  Think of it as a subscription to a never-ending supply of developer training.You get to meet my cats and chickens! When you’re learning to program you often have to sacrifice learning the exciting and current technologies in favor of the “beginner friendly” classes.  With this course, you get the best of both worlds.  This is a course designed for the complete beginner, yet it covers some of the most exciting and relevant topics in the industry.Throughout the brand new version of the course we cover tons of tools and technologies including:HTML5CSS3FlexboxResponsive DesignJavaScript (all 2022 modern syntax, ES6, ES2018, etc.)Asynchronous JavaScript – Promises, async/await, etc.AJAX and single page appsBootstrap 4 and 5 (alpha)SemanticUIBulma CSS FrameworkDOM ManipulationUnix(Command Line) CommandsNodeJSNPMExpressJSTemplatingRESTSQL vs. NoSQL databasesMongoDBDatabase AssociationsSchema DesignMongooseAuthentication From ScratchCookies & SessionsAuthorizationCommon Security Issues – SQL Injection, XSS, etc.Developer Best PracticesDeploying AppsCloud DatabasesImage Upload and StorageMaps and GeocodingThis course is also unique in the way that it is structured and presented. Many online courses are just a long series of “watch as I code” videos.  This course is different. I’ve incorporated everything I learned in my years of teaching to make this course not only more effective but more engaging. The course includes:LecturesCode-AlongsProjectsExercisesResearch AssignmentsSlidesDownloadsReadingsToo many pictures of my dog RustyIf you have any questions, please don’t hesitate to contact me.  I got into this industry because I love working with people and helping students learn.  Sign up today and see how fun, exciting, and rewarding web development can be!


Section 1: Course Orientation

Lecture 1 Welcome To The Course!

Lecture 2 Curriculum Walkthrough

Lecture 3 When Was The Course Last Updated?

Lecture 4 Course Change Log

Lecture 5 Will I Get A Job?

Lecture 6 Accessing Course Code & Slides

Lecture 7 Joining The Community Chat & Groups

Lecture 8 Tips On The Interactive Coding Exercises

Lecture 9 Migrating From The Old Version Of This Course

Section 2: An Introduction to Web Development

Lecture 10 What Matters In This Section?

Lecture 11 The Internet in 5 Minutes

Lecture 12 Intro to the Web

Lecture 13 The Request/Response Cycle

Lecture 14 Front-End and Back-End

Lecture 15 What do HTML/CSS/JS do?

Lecture 16 Setting Up Our Developer Environment

Lecture 17 OPTIONAL VSCode Theme

Section 3: HTML: The Essentials

Lecture 18 What Matters In This Section

Lecture 19 Introduction to HTML

Lecture 20 Our Very First HTML Page

Lecture 21 TIP: Mozilla Developer Network

Lecture 22 Paragraph Elements

Lecture 23 Heading Elements

Lecture 24 Introduction to the Chrome Inspector

Lecture 25 HTML Boilerplate

Lecture 26 VSCode Tip: Auto-format

Lecture 27 List Elements

Lecture 28 Anchor Tags

Lecture 29 Images

Lecture 30 Comments

Section 4: HTML: Next Steps & Semantics

Lecture 31 What Matters In This Section

Lecture 32 What Exactly Is HTML5?

Lecture 33 Block vs. Inline Elements – Divs and Spans

Lecture 34 An Odd Assortment of Elements: HR, BR, Sup, & Sub

Lecture 35 Entity Codes

Lecture 36 Intro to Semantic Markup

Lecture 37 Playing With Semantic Elements

Lecture 38 Screen Reader Demonstration

Lecture 39 VSCode Tip: Emmet

Section 5: HTML: Forms & Tables

Lecture 40 What Matters In This Section

Lecture 41 Unit Goals

Lecture 42 Introducing HTML Tables

Lecture 43 Tables: TR, TD, and TH Elements

Lecture 44 Tables: Thead, Tbody, and Tfoot Elements

Lecture 45 Tables: Colspan & Rowspan

Lecture 46 The Form Element

Lecture 47 Common Input Types

Lecture 48 The All-Important Label

Lecture 49 HTML Buttons

Lecture 50 The Name Attribute

Lecture 51 “Hijacking” Google & Reddit’s Search

Lecture 52 Radio Buttons, Checkboxes, & Selects

Lecture 53 Range & Text Area

Lecture 54 HTML5 Form Validations

Lecture 55 Creating A Marathon Registration Form Intro

Lecture 56 Creating A Marathon Registration Form Solution

Section 6: CSS: The Very Basics

Lecture 57 What Matters In This Section

Lecture 58 What is CSS?

Lecture 59 CSS is Huge, Don’t Panic!

Lecture 60 Including Styles Correctly

Lecture 61 Color & Background-Color Properties

Lecture 62 Colors Systems: RGB & Named Colors

Lecture 63 Colors Systems: Hexadecimal

Lecture 64 A Reminder On Semicolons & CSS

Lecture 65 Common Text Properties

Lecture 66 Font Size Basics With Pixels

Lecture 67 The Font Family Property

Section 7: The World of CSS Selectors

Lecture 68 What Matters In This Section

Lecture 69 Universal & Element Selectors

Lecture 70 The ID Selector

Lecture 71 The Class Selector

Lecture 72 The Descendant Selector

Lecture 73 The Adjacent & Direct-Descendant Selectors

Lecture 74 The Attribute Selector

Lecture 75 Pseudo Classes

Lecture 76 Pseudo Elements

Lecture 77 The CSS Cascade

Lecture 78 WTF is Specificity

Lecture 79 TIP: Chrome Dev Tools & CSS

Lecture 80 Inline Styles & Important

Lecture 81 CSS Inheritance

Section 8: The CSS Box Model

Lecture 82 What Matters In This Section

Lecture 83 Box Model: Width & Height

Lecture 84 Box Model: Border & Border-Radius

Lecture 85 Box Model: Padding

Lecture 86 Box Model: Margin

Lecture 87 The Display Property

Lecture 88 CSS Units Revisited

Lecture 89 CSS Units: ems

Lecture 90 CSS Units: rems

Section 9: Other Assorted Useful CSS Properties

Lecture 91 What Matters In This Section

Lecture 92 Opacity & The Alpha Channel

Lecture 93 The Position Property

Lecture 94 CSS Transitions (yay!)

Lecture 95 The Power of CSS Transforms

Lecture 96 Fancy Button Hover Effect CodeAlong

Lecture 97 The Truth About Background

Lecture 98 Google Fonts is Amazing

Lecture 99 Photo Blog CodeAlong Pt. 1

Lecture 100 Photo Blog CodeAlong Pt. 2

Section 10: Responsive CSS & Flexbox

Lecture 101 What Matters In This Section

Lecture 102 What on Earth Is Flexbox?

Lecture 103 Flex-Direction

Lecture 104 Justify-Content

Lecture 105 Flex-Wrap

Lecture 106 Align-Items

Lecture 107 Align-Content & Align-Self

Lecture 108 Flex-Basis, Grow, & Shrink

Lecture 109 Flex Shorthand

Lecture 110 Responsive Design & Media Queries Intro

Lecture 111 The Power of Media Queries

Lecture 112 Building a Responsive Nav

Section 11: Pricing Panel Project

Lecture 113 Pricing Panel CodeAlong Pt. 1

Lecture 114 Pricing Panel CodeAlong Pt. 2

Lecture 115 Pricing Panel CodeAlong Pt. 3

Lecture 116 Pricing Panel CodeAlong Pt. 4

Lecture 117 Pricing Panel CodeAlong Pt. 5

Lecture 118 Pricing Panel CodeAlong Pt. 6

Section 12: CSS Frameworks: Bootstrap

Lecture 119 What Matters In This Section

Lecture 120 WTF Is Bootstrap

Lecture 121 Including Bootstrap & Containers

Lecture 122 Bootstrap Buttons

Lecture 123 Bootstrap Typography & Utilities

Lecture 124 Badges, Alerts, & Button Groups

Lecture 125 Intro to the Bootstrap Grid

Lecture 126 Responsive Bootstrap Grids

Lecture 127 Useful Grid Utilities

Lecture 128 Bootstrap & Forms

Lecture 129 Bootstrap Navbars

Lecture 130 Bootstrap Icons!

Lecture 131 Other Bootstrap Utilities

Lecture 132 A Mixed Bag of Other Bootstrap Stuff

Section 13: OPTIONAL Museum Of Candy Project

Lecture 133 Watch This First! (it’s short)

Lecture 134 Museum of Candy Project Part 1


Lecture 136 Museum of Candy Project Part 2

Lecture 137 Museum of Candy Project Part 3

Lecture 138 Museum of Candy Project Part 4

Lecture 139 Museum of Candy Project Part 5

Section 14: JavaScript Basics!

Lecture 140 What Matters In This Section

Lecture 141 Why JavaScript is Awesome

Lecture 142 Primitives & The Console

Lecture 143 JavaScript Numbers

Lecture 144 WTF is NaN

Lecture 145 Quick Numbers Quiz

Lecture 146 Variables & Let

Lecture 147 Updating Variables

Lecture 148 Const & Var

Lecture 149 Booleans

Lecture 150 Variable Naming and Conventions

Section 15: JavaScript Strings and More

Lecture 151 What Matters In This Section

Lecture 152 Introducing Strings

Lecture 153 Indices & Length

Lecture 154 String Methods

Lecture 155 String Methods With Arguments

Lecture 156 String Template Literals -SUPER USEFUL

Lecture 157 Undefined & Null

Lecture 158 Random Numbers & The Math Object

Section 16: JavaScript Decision Making

Lecture 159 What Matters In This Section

Lecture 160 Decision Making With Code??

Lecture 161 Comparison Operators

Lecture 162 Equality: Triple Vs. Double Equals

Lecture 163 Console, Alert, & Prompt

Lecture 164 Running JavaScript From A Script!

Lecture 165 If Statements

Lecture 166 Else-If

Lecture 167 Else

Lecture 168 Nesting Conditionals

Lecture 169 Truth-y & False-y Values

Lecture 170 Logical AND

Lecture 171 Logical OR

Lecture 172 Logical NOT

Lecture 173 The Switch Statement Is…A Lot

Section 17: JavaScript Arrays

Lecture 174 What Matters In This Section

Lecture 175 Introducing Arrays

Lecture 176 Array Random Access

Lecture 177 Push & Pop

Lecture 178 Shift & Unshift

Lecture 179 Concat, indexOf, includes & reverse

Lecture 180 Slice & Splice

Lecture 181 Reference Types & Equality Testing

Lecture 182 Arrays + Const

Lecture 183 Multi-Dimensional Arrays

Section 18: JavaScript Object Literals

Lecture 184 What Matters In This Section

Lecture 185 Introducing Object Literals

Lecture 186 Creating Object Literals

Lecture 187 Accessing Data Out Of Objects

Lecture 188 Modifying Objects

Lecture 189 Nesting Arrays & Objects

Section 19: Repeating Stuff With Loops

Lecture 190 What Matters In This Section

Lecture 191 Intro to For Loops

Lecture 192 More For Loops Examples

Lecture 193 The Perils Of Infinite Loops 🙁

Lecture 194 Looping Over Arrays

Lecture 195 Nested Loops

Lecture 196 Another Loop: The While Loop

Lecture 197 The Break Keyword

Lecture 198 Writing a Guessing Game

Lecture 199 The Lovely For…Of Loop

Lecture 200 Iterating Over Objects

Lecture 201 Todo List Project Intro

Lecture 202 Todo List Project CodeAlong

Section 20: NEW: Introducing Functions

Lecture 203 What Matters In This Section

Lecture 204 Intro to Functions

Lecture 205 Our Very First Function

Lecture 206 Arguments Intro

Lecture 207 Functions With Multiple Arguments

Lecture 208 The Return Keyword

Section 21: Leveling Up Our Functions

Lecture 209 What Matters In This Section

Lecture 210 Function Scope

Lecture 211 Block Scope

Lecture 212 Lexical Scope

Lecture 213 Function Expressions

Lecture 214 Higher Order Functions

Lecture 215 Returning Functions

Lecture 216 Defining Methods

Lecture 217 The Mysterious Keyword ‘this’

Lecture 218 Using Try/Catch

Section 22: Callbacks & Array Methods

Lecture 219 What Matters In This Section

Lecture 220 What Is This Section Even About?!

Lecture 221 The forEach Method

Lecture 222 The map Method

Lecture 223 Intro to Arrow Functions

Lecture 224 Arrow Function Implicit Returns

Lecture 225 Arrow Functions Wrapup

Lecture 226 setTimeout and setInterval

Lecture 227 The filter Method

Lecture 228 Some & Every Methods

Lecture 229 The Notorious Reduce Method

Lecture 230 Arrow Functions & ‘this’

Section 23: Newer JavaScript Features

Lecture 231 What Matters In This Section

Lecture 232 Default Params

Lecture 233 Spread in Function Calls

Lecture 234 Spread with Array Literals

Lecture 235 Spread with Objects

Lecture 236 Rest Params

Lecture 237 Destructuring Arrays

Lecture 238 Destructuring Objects

Lecture 239 Destructuring Params

Section 24: Introducing The World Of The DOM

Lecture 240 What Matters In This Section

Lecture 241 Introducing the DOM

Lecture 242 The Document Object

Lecture 243 getElementById

Lecture 244 getElementsByTagName & className

Lecture 245 querySelector & querySelectorAll

Lecture 246 innerHTML, textContent, & innerText

Lecture 247 Attributes

Lecture 248 Changing Styles

Lecture 249 ClassList

Lecture 250 Traversing Parent/Child/Sibling

Lecture 251 Append & AppendChild

Lecture 252 removeChild & remove

Lecture 253 Pokemon Sprites Demo

Section 25: The Missing Piece: DOM Events

Lecture 254 What Matters In This Section

Lecture 255 Intro to Events

Lecture 256 Inline Events

Lecture 257 The Onclick Property

Lecture 258 addEventListener

Lecture 259 Random Color Exercise

Lecture 260 Events & The Keyword This

Lecture 261 Keyboard Events & Event Objects

Lecture 262 NEW VERSION: Form Events & PreventDefault

Lecture 263 NEW VERSION: Practice With Form Events & PreventDefault

Lecture 264 ORIGINAL VERSION: Form Events & PreventDefault

Lecture 265 Input & Change Events

Lecture 266 Event Bubbling

Lecture 267 Event Delegation

Section 26: Score Keeper CodeAlong

Lecture 268 Score Keeper Pt. 1

Lecture 269 Score Keeper Pt. 2

Lecture 270 Score Keeper Pt. 3 With Bulma

Lecture 271 Score Keeper Pt. 4 Refactoring

Section 27: Async JavaScript: Oh Boy!

Lecture 272 What Matters In This Section

Lecture 273 The Call Stack

Lecture 274 WebAPIs & Single Threaded

Lecture 275 Callback Hell 🙁

Lecture 276 Demo: fakeRequest Using Callbacks

Lecture 277 Demo: fakeRequest Using Promises

Lecture 278 The Magic Of Promises

Lecture 279 Creating Our Own Promises

Lecture 280 The Async Keyword

Lecture 281 The Await Keyword

Lecture 282 Handling Errors In Async Functions

Section 28: AJAX and API’s

Lecture 283 What Matters In This Section

Lecture 284 Intro to AJAX

Lecture 285 Intro to APIs

Lecture 286 WTF is JSON

Lecture 287 Using Hoppscotch (or Postman)

Lecture 288 HTTP Verbs

Lecture 289 HTTP Status Codes

Lecture 290 Understanding Query Strings

Lecture 291 HTTP Headers

Lecture 292 Making XHRs

Lecture 293 Using The Fetch API

Lecture 294 Introducing Axios

Lecture 295 Setting Headers With Axios

Lecture 296 TV Show Search App

Section 29: Prototypes, Classes, & OOP

Lecture 297 What Matters In This Section

Lecture 298 What On Earth Are Prototypes

Lecture 299 Intro to Object Oriented Programming

Lecture 300 Factory Functions

Lecture 301 Constructor Functions

Lecture 302 JavaScript Classes

Lecture 303 More Classes Practice

Lecture 304 Extends and Super Keywords

Section 30: Mastering The Terminal

Lecture 305 What Matters In This Section

Lecture 306 Backend Overview

Lecture 307 A Pep Talk On Terminal

Lecture 308 Why Do We Need To Know Terminal Commands?

Lecture 309 Windows Terminal Installation Instructions

Lecture 310 The Basics: LS & PWD

Lecture 311 Changing Directories

Lecture 312 Relative Vs. Absolute Paths

Lecture 313 Making Directories

Lecture 314 Man Pages & Flags

Lecture 315 The Touch Command

Lecture 316 Removing Files & Folders

Section 31: Our First Brush With Node

Lecture 317 What Matters In This Section

Lecture 318 Introducing Node JS

Lecture 319 What Is Node Used For?

Lecture 320 Installing Node

Lecture 321 The Node REPL

Lecture 322 Running Node Files

Lecture 323 Process & Argv

Lecture 324 File System Module Crash Course

Section 32: Exploring Modules & The NPM Universe

Lecture 325 What Matters In This Section

Lecture 326 Working With module.exports

Lecture 327 Requiring A Directory

Lecture 328 Introducing NPM

Lecture 329 Installing Packages – Jokes & Rainbow

Lecture 330 Adding Global Packages

Lecture 331 The All-Important Package.json

Lecture 332 Installing All Dependencies For A Project

Lecture 333 Language Guesser Challenge

Section 33: Creating Servers With Express

Lecture 334 What Matters In This Section

Lecture 335 Introducing Express

Lecture 336 Our Very First Express App

Lecture 337 The Request & Response Objects

Lecture 338 Express Routing Basics

Lecture 339 Express Path Parameters

Lecture 340 Working With Query Strings

Lecture 341 Auto-Restart With Nodemon

Section 34: Creating Dynamic HTML With Templating

Lecture 342 What Matters In This Section

Lecture 343 What is Templating?

Lecture 344 Configuring Express For EJS

Lecture 345 Setting The Views Directory

Lecture 346 EJS Interpolation Syntax

Lecture 347 Passing Data To Templates

Lecture 348 Subreddit Template Demo

Lecture 349 Conditionals in EJS

Lecture 350 Loops In EJS

Lecture 351 A More Complex Subreddit Demo

Lecture 352 Serving Static Assets In Express

Lecture 353 Bootstrap + Express

Lecture 354 EJS & Partials

Section 35: Defining RESTful Routes

Lecture 355 What Matters In This Section

Lecture 356 Get Vs. Post Requests

Lecture 357 Defining Express Post Routes

Lecture 358 Parsing The Request Body

Lecture 359 Intro to REST

Lecture 360 RESTful Comments Overview

Lecture 361 RESTful Comments Index

Lecture 362 RESTful Comments New

Lecture 363 Express Redirects

Lecture 364 RESTful Comments Show

Lecture 365 The UUID Package

Lecture 366 RESTful Comments Update

Lecture 367 Express Method Override

Lecture 368 RESTful Comments Delete

Section 36: Our First Database: MongoDB

Lecture 369 What Matters In This Section

Lecture 370 Introduction to Databases

Lecture 371 SQL Vs. NoSQL Databases

Lecture 372 Why We’re Learning Mongo

Lecture 373 Installing Mongo: MacOS

Lecture 374 Installing Mongo: Windows

Lecture 375 The Mongo Shell

Lecture 376 What On Earth Is BSON?

Lecture 377 Inserting With Mongo

Lecture 378 Finding With Mongo

Lecture 379 Updating With Mongo

Lecture 380 Deleting With Mongo

Lecture 381 Additional Mongo Operators

Section 37: Connecting To Mongo With Mongoose

Lecture 382 What Matters In This Section

Lecture 383 What is Mongoose

Lecture 384 Connecting Mongoose to Mongo

Lecture 385 Our First Mongoose Model

Lecture 386 Insert Many

Lecture 387 Finding With Mongoose

Lecture 388 Updating With Mongoose

Lecture 389 Deleting With Mongoose!

Lecture 390 Mongoose Schema Validations

Lecture 391 Additional Schema Constraints

Lecture 392 Validating Mongoose Updates

Lecture 393 Mongoose Validation Errors

Lecture 394 Model Instance Methods

Lecture 395 Adding Model Static Methods

Lecture 396 Mongoose Virtuals

Lecture 397 Defining Mongoose Middleware

Section 38: Putting It All Together: Mongoose With Express

Lecture 398 What Matters In This Section

Lecture 399 Express + Mongoose Basic Setup

Lecture 400 Creating Our Model

Lecture 401 Products Index

Lecture 402 Product Details

Lecture 403 Creating Products

Lecture 404 Updating Products

Lecture 405 Tangent On Category Selector

Lecture 406 Deleting Products

Lecture 407 BONUS: Filtering By Category

Section 39: YelpCamp: Campgrounds CRUD

Lecture 408 Introducing YelpCamp: Our Massive Project

Lecture 409 How to Access YelpCamp Code

Lecture 410 Creating the Basic Express App

Lecture 411 Campground Model Basics

Lecture 412 Seeding Campgrounds

Lecture 413 Campground Index

Lecture 414 Campground Show

Lecture 415 Campground New & Create

Lecture 416 Campground Edit & Update

Lecture 417 Campground Delete

Section 40: Middleware: The Key To Express

Lecture 418 What Matters In This Section

Lecture 419 Intro to Express Middleware

Lecture 420 Using Morgan – Logger Middleware

Lecture 421 Defining Our Own Middleware

Lecture 422 More Middleware Practice

Lecture 423 Setting Up A 404 Route

Lecture 424 Password Middleware Demo (NOT REAL AUTH)

Lecture 425 Protecting Specific Routes

Section 41: YelpCamp: Adding Basic Styles

Lecture 426 A New EJS Tool For Layouts

Lecture 427 Bootstrap5! Boilerplate

Lecture 428 Navbar Partial

Lecture 429 Footer Partial

Lecture 430 Adding Images

Lecture 431 Styling Campgrounds Index

Lecture 432 Styling The New Form

Lecture 433 Styling Edit Form

Lecture 434 Styling Show Page

Section 42: Handling Errors In Express Apps

Lecture 435 What Matters In This Section

Lecture 436 Express’ Built-In Error Handler

Lecture 437 Defining Custom Error Handlers

Lecture 438 Our Custom Error Class

Lecture 439 Handling Async Errors

Lecture 440 Handling More Async Errors!

Lecture 441 Defining An Async Utility

Lecture 442 Differentiating Mongoose Errors

Section 43: YelpCamp: Errors & Validating Data

Lecture 443 Where To Next With YelpCamp?

Lecture 444 Client-Side Form Validations

Lecture 445 Basic Error Handler

Lecture 446 Defining ExpressError Class

Lecture 447 More Errors

Lecture 448 Defining Error Template

Lecture 449 JOI Schema Validations

Lecture 450 JOI Validation Middleware

Section 44: Data Relationships With Mongo

Lecture 451 What Matters In This Section

Lecture 452 Introduction to Mongo Relationships

Lecture 453 SQL Relationships Overview

Lecture 454 One to Few

Lecture 455 One to Many

Lecture 456 Mongoose Populate

Lecture 457 One to “Bajillions”

Lecture 458 Mongo Schema Design

Section 45: Mongo Relationships With Express

Lecture 459 What Matters In This Section

Lecture 460 Defining Our Farm & Product Models

Lecture 461 Note about Farm model

Lecture 462 Creating New Farms

Lecture 463 Farms Show Page

Lecture 464 Creating Products For A Farm

Lecture 465 Finishing Touches

Lecture 466 Deletion Mongoose Middleware

Section 46: YelpCamp: Adding The Reviews Model

Lecture 467 Defining The Review Model

Lecture 468 Adding The Review Form

Lecture 469 Creating Reviews

Lecture 470 Validating Reviews

Lecture 471 Displaying Reviews

Lecture 472 Styling Reviews

Lecture 473 Deleting Reviews

Lecture 474 Campground Delete Middleware

Section 47: Express Router & Cookies

Lecture 475 What Matters In This Section

Lecture 476 Express Router Intro

Lecture 477 Express Router & Middleware

Lecture 478 Introducing Cookies

Lecture 479 Sending Cookies

Lecture 480 Cookie Parser Middleware

Lecture 481 Signing Cookies

Lecture 482 OPTIONAL: HMAC Signing

Section 48: Express Session & Flash

Lecture 483 What Matters In This Section

Lecture 484 Introduction to Sessions

Lecture 485 Express Session

Lecture 486 More Express Session

Lecture 487 Intro to Flash

Lecture 488 Res.locals & Flash

Section 49: YelpCamp: Restructuring & Flash

Lecture 489 Breaking Out Campground Routes

Lecture 490 Breaking Out Review Routes

Lecture 491 Serving Static Assets

Lecture 492 Configuring Session

Lecture 493 Setting Up Flash

Lecture 494 Flash Success Partial

Lecture 495 Flash Errors Partial

Section 50: Authentication From “Scratch”

Lecture 496 What Matters In This Section

Lecture 497 Authentication Vs. Authorization

Lecture 498 How to (not) Store Passwords

Lecture 499 Cryptographic Hashing Functions

Lecture 500 Password Salts

Lecture 501 Intro to Bcrypt

Lecture 502 Auth Demo: Setup

Lecture 503 Auth Demo: Registering

Lecture 504 Auth Demo: Login

Lecture 505 Auth Demo: Staying Logged In With Session

Lecture 506 Auth Demo: Logout

Lecture 507 Auth Demo: Require Login Middleware

Lecture 508 Auth Demo: Refactoring To Model Methods

Section 51: YelpCamp: Adding In Authentication

Lecture 509 Introduction to Passport

Lecture 510 Creating Our User Model

Lecture 511 Configuring Passport

Lecture 512 Register Form

Lecture 513 Register Route Logic

Lecture 514 Login Routes

Lecture 515 isLoggedIn Middleware

Lecture 516 Adding Logout

Lecture 517 currentUser Helper

Lecture 518 Fixing Register Route

Lecture 519 ReturnTo Behavior

Section 52: YelpCamp: Basic Authorization

Lecture 520 Adding an Author to Campground

Lecture 521 Showing and Hiding Edit/Delete

Lecture 522 Campground Permissions

Lecture 523 Authorization Middleware

Lecture 524 Reviews Permissions

Lecture 525 More Reviews Authorization

Section 53: YelpCamp: Controllers & Star Ratings

Lecture 526 Refactoring To Campgrounds Controller

Lecture 527 Adding a Reviews Controller

Lecture 528 A Fancy Way To Restructure Routes

Lecture 529 Displaying Star Ratings

Lecture 530 Star Rating Form

Section 54: YelpCamp: Image Upload

Lecture 531 Intro To Image Upload Process

Lecture 532 The Multer Middleware

Lecture 533 Cloudinary Registration

Lecture 534 Environment Variables with dotenv

Lecture 535 Uploading To Cloudinary Basics

Lecture 536 Storing Uploaded Image Links In Mongo

Lecture 537 Displaying Images In A Carousel

Lecture 538 Fixing Our Seeds

Lecture 539 Adding Upload to Edit Page

Lecture 540 Customizing File Input

Lecture 541 A Word Of Warning!

Lecture 542 Deleting Images Form

Lecture 543 Deleting Images Backend

Lecture 544 Adding a Thumbnail Virtual Property

Section 55: YelpCamp: Adding Maps

Lecture 545 Registering For Mapbox

Lecture 546 Geocoding Our Locations

Lecture 547 Working With GeoJSON

Lecture 548 Displaying A Map

Lecture 549 Centering The Map On A Campground

Lecture 550 Fixing Our Seeds Bug

Lecture 551 Customizing Map Popup

Section 56: YelpCamp: Fancy Cluster Map

Lecture 552 Intro To Our Cluster Map

Lecture 553 Adding Earthquake Cluster Map

Lecture 554 Reseeding Our Database (again)

Lecture 555 Basic Clustering Campgrounds

Lecture 556 Tweaking Clustering Code

Lecture 557 Changing Cluster Size and Color

Lecture 558 Adding Custom Popups

Section 57: YelpCamp: Styles Clean Up

Lecture 559 Styling Home Page

Lecture 560 Additional Home Page Styling

Lecture 561 Styling Login Form

Lecture 562 Styling Register Form

Lecture 563 Spacing Campgrounds

Lecture 564 Removing Inline Map Styles

Lecture 565 Adding Map Controls

Section 58: YelpCamp: Common Security Issues

Lecture 566 Mongo Injection

Lecture 567 Cross Site Scripting (XSS)

Lecture 568 Sanitizing HTML w/ JOI

Lecture 569 Minor Changes to Session/Cookies

Lecture 570 Hiding Errors

Lecture 571 Using Helmet

Lecture 572 Content Security Policy Fun

Section 59: YelpCamp: Deploying

Lecture 573 Setting Up Mongo Atlas

Lecture 574 Using Mongo For Our Session Store

Lecture 575 Heroku Setup

Lecture 576 Pushing to Heroku

Lecture 577 Fixing Heroku Errors

Lecture 578 Configuring Heroku Env Variables

Section 60: The End 🙁

Lecture 579 What’s Next and Goodbye!

Section 61: LEGACY CONTENT (The Old Version Of This Course)

Lecture 580 LEGACY Download: Introduction To This Course

Lecture 581 LEGACY Download: Introduction To Front End Development

Lecture 582 LEGACY Download: Introduction to HTML

Lecture 583 LEGACY Download: Intermediate HTML

Lecture 584 LEGACY Download: Introduction to CSS

Lecture 585 LEGACY Download: Intermediate CSS

Lecture 586 LEGACY Download: Bootstrap

Lecture 587 LEGACY Download: Bootstrap 4

Lecture 588 LEGACY Download: Bootstrap 4 Flexbox & Layout

Lecture 589 LEGACY Download: Introduction to JavaScript

Lecture 590 LEGACY Download: JavaScript Basics Control Flow

Lecture 591 LEGACY Download: JavaScript Basics Functions

Lecture 592 LEGACY Download: JavaScript Basics Arrays

Lecture 593 LEGACY Download: JavaScript Basics Objects

Lecture 594 LEGACY Download: DOM Manipulation

Lecture 595 LEGACY Download: Advanced DOM Manipulation

Lecture 596 LEGACY Download: Color Game Project

Lecture 597 LEGACY Download: Intro to jQuery

Lecture 598 LEGACY Download: Advanced jQuery

Lecture 599 LEGACY Download: Todo List Projects

Lecture 600 LEGACY Download: Patatap Clone

Lecture 601 LEGACY Download: Backend Basics

Lecture 602 LEGACY Download: The Command Line

Lecture 603 LEGACY Download: Node JS

Lecture 604 LEGACY Download: Server Side Frameworks

Lecture 605 LEGACY Download: Intermediate Express

Lecture 606 LEGACY Download: Working With APIs

Lecture 607 LEGACY Download: YelpCamp Basics

Lecture 608 LEGACY Download: Databases

Lecture 609 LEGACY Download: YelpCamp Data Persistence

Lecture 610 LEGACY Download: RESTful Routing

Lecture 611 LEGACY Download: Data Associations

Lecture 612 LEGACY Download: YelpCamp Comments

Lecture 613 LEGACY Download: Authentication

Lecture 614 LEGACY Download: YelpCamp Adding Authentication

Lecture 615 LEGACY Download: YelpCamp Cleaning Up

This course is for anyone who wants to learn about web development, regardless of previous experience,It’s perfect for complete beginners with zero experience,It’s also great for anyone who does have some experience in a few of the technologies(like HTML and CSS) but not all,If you want to take ONE COURSE to learn everything you need to know about web development, take this course

Course Information:

Udemy | English | 63h 46m | 57.87 GB
Created by: Colt Steele

You Can See More Courses in the Developer >> Greetings from

New Courses

Scroll to Top