Course Contents
-
Section 1: Course Orientation
-
1 The Web Developer Bootcamp 202502:33
-
2 Welcome To The Course!03:47
-
3 Curriculum Walkthrough04:12
-
4 When Was The Course Last Updated?02:17
-
5 Will I Get A Job?05:45
-
6 Accessing Course Code & Slides02:23
-
7 Tips On The Interactive Coding Exercises03:25
-
8 Migrating From The Old Version Of This Course08:07
-
-
Section 2: An Introduction to Web Development
-
9 What Matters In This Section?03:28
-
10 The Internet in 5 Minutes05:42
-
11 Intro to the Web06:01
-
12 The Request/Response Cycle04:21
-
13 Front-End and Back-End03:59
-
14 What do HTML/CSS/JS do?05:36
-
15 Setting Up Our Developer Environment05:59
-
16 OPTIONAL VSCode Theme04:28
-
-
Section 3: HTML: The Essentials
-
17 What Matters In This Section02:12
-
18 Introduction to HTML06:55
-
19 Our Very First HTML Page05:33
-
20 TIP: Mozilla Developer Network02:41
-
21 Paragraph Elements03:14
-
22 Heading Elements06:34
-
23 Introduction to the Chrome Inspector03:07
-
24 HTML Boilerplate07:25
-
25 VSCode Tip: Auto-format02:37
-
26 List Elements06:39
-
27 Anchor Tags07:07
-
28 Images06:26
-
29 Comments02:31
-
-
Section 4: HTML: Next Steps & Semantics
-
30 What Matters In This Section02:27
-
31 What Exactly Is HTML5?06:27
-
32 Block vs. Inline Elements - Divs and Spans08:42
-
33 An Odd Assortment of Elements: HR, BR, Sup, & Sub06:18
-
34 Entity Codes06:01
-
35 Intro to Semantic Markup09:01
-
36 Playing With Semantic Elements12:18
-
37 Screen Reader Demonstration03:33
-
38 VSCode Tip: Emmet06:12
-
-
Section 5: HTML: Forms & Tables
-
39 What Matters In This Section02:52
-
40 Unit Goals01:09
-
41 Introducing HTML Tables04:08
-
42 Tables: TR, TD, and TH Elements09:11
-
43 Tables: Thead, Tbody, and Tfoot Elements02:15
-
44 Tables: Colspan & Rowspan04:14
-
45 The Form Element09:18
-
46 Common Input Types05:27
-
47 The All-Important Label06:52
-
48 HTML Buttons05:17
-
49 The Name Attribute05:26
-
50 "Hijacking" Google & Reddit's Search06:25
-
51 Radio Buttons, Checkboxes, & Selects10:54
-
52 Range & Text Area07:02
-
53 HTML5 Form Validations09:27
-
54 Creating A Marathon Registration Form Intro02:45
-
55 Creating A Marathon Registration Form Solution12:20
-
-
Section 6: CSS: The Very Basics
-
56 What Matters In This Section02:51
-
57 What is CSS?04:55
-
58 CSS is Huge, Don't Panic!04:03
-
59 Including Styles Correctly06:15
-
60 Color & Background-Color Properties05:15
-
61 Colors Systems: RGB & Named Colors07:21
-
62 Colors Systems: Hexadecimal07:38
-
63 A Reminder On Semicolons & CSS01:11
-
64 Common Text Properties11:16
-
65 Font Size Basics With Pixels03:06
-
66 The Font Family Property06:01
-
-
Section 7: The World of CSS Selectors
-
67 What Matters In This Section02:38
-
68 Universal & Element Selectors04:57
-
69 The ID Selector05:24
-
70 The Class Selector04:43
-
71 The Descendant Selector05:11
-
72 The Adjacent & Direct-Descendant Selectors05:03
-
73 The Attribute Selector05:30
-
74 Pseudo Classes08:46
-
75 Pseudo Elements04:23
-
76 The CSS Cascade02:21
-
77 WTF is Specificity08:00
-
78 TIP: Chrome Dev Tools & CSS03:57
-
79 Inline Styles & Important03:49
-
80 CSS Inheritance05:10
-
-
Section 8: The CSS Box Model
-
81 What Matters In This Section02:42
-
82 Box Model: Width & Height05:40
-
83 Box Model: Border & Border-Radius12:08
-
84 Box Model: Padding07:45
-
85 Box Model: Margin06:11
-
86 The Display Property11:46
-
87 CSS Units Revisited05:39
-
88 CSS Units: ems08:20
-
89 CSS Units: rems07:43
-
-
Section 9: Other Assorted Useful CSS Properties
-
90 What Matters In This Section03:04
-
91 Opacity & The Alpha Channel06:32
-
92 The Position Property09:40
-
93 CSS Transitions (yay!)11:17
-
94 The Power of CSS Transforms13:13
-
95 Fancy Button Hover Effect CodeAlong10:21
-
96 The Truth About Background08:45
-
97 Google Fonts is Amazing07:47
-
98 Photo Blog CodeAlong Pt. 108:44
-
99 Photo Blog CodeAlong Pt. 208:38
-
-
Section 10: Responsive CSS & Flexbox
-
100 What Matters In This Section03:11
-
101 What on Earth Is Flexbox?04:23
-
102 Flex-Direction05:58
-
103 Justify-Content05:07
-
104 Flex-Wrap03:42
-
105 Align-Items07:47
-
106 Align-Content & Align-Self05:18
-
107 Flex-Basis, Grow, & Shrink07:51
-
108 Flex Shorthand05:38
-
109 Responsive Design & Media Queries Intro07:18
-
110 The Power of Media Queries09:25
-
111 Building a Responsive Nav08:42
-
-
Section 11: Pricing Panel Project
-
112 Pricing Panel CodeAlong Pt. 103:55
-
113 Pricing Panel CodeAlong Pt. 203:46
-
114 Pricing Panel CodeAlong Pt. 303:45
-
115 Pricing Panel CodeAlong Pt. 404:43
-
116 Pricing Panel CodeAlong Pt. 503:47
-
117 Pricing Panel CodeAlong Pt. 603:24
-
-
Section 12: CSS Frameworks: Bootstrap
-
118 What Matters In This Section03:02
-
119 WTF Is Bootstrap08:01
-
120 Including Bootstrap & Containers09:38
-
121 Bootstrap Buttons09:34
-
122 Bootstrap Typography & Utilities08:00
-
123 Badges, Alerts, & Button Groups11:30
-
124 Intro to the Bootstrap Grid08:05
-
125 Responsive Bootstrap Grids11:17
-
126 Useful Grid Utilities08:17
-
127 Bootstrap & Forms13:17
-
128 Bootstrap Navbars13:56
-
129 Bootstrap Icons!07:53
-
130 Other Bootstrap Utilities11:16
-
131 A Mixed Bag of Other Bootstrap Stuff03:46
-
-
Section 13: OPTIONAL Museum Of Candy Project
-
132 Watch This First! (it's short)01:09
-
133 Museum of Candy Project Part 105:16
-
134 Museum of Candy Project Part 214:01
-
135 Museum of Candy Project Part 312:41
-
136 Museum of Candy Project Part 416:39
-
137 Museum of Candy Project Part 509:41
-
-
Section 14: JavaScript Basics!
-
138 What Matters In This Section02:27
-
139 Why JavaScript is Awesome08:09
-
140 Primitives & The Console06:38
-
141 JavaScript Numbers07:43
-
142 WTF is NaN02:56
-
143 Quick Numbers Quiz01:57
-
144 Variables & Let06:31
-
145 Updating Variables05:17
-
146 Increment Operator Explanation: i++ vs ++i03:50
-
147 Const & Var04:53
-
148 Booleans04:37
-
149 Variable Naming and Conventions05:31
-
-
Section 15: JavaScript Strings and More
-
150 What Matters In This Section01:45
-
151 Introducing Strings04:16
-
152 Indices & Length08:25
-
153 String Methods07:35
-
154 String Methods With Arguments10:27
-
155 String Template Literals -SUPER USEFUL07:01
-
156 Undefined & Null03:06
-
157 Random Numbers & The Math Object07:32
-
-
Section 16: JavaScript Decision Making
-
158 What Matters In This Section01:41
-
159 Decision Making With Code??02:01
-
160 Comparison Operators05:19
-
161 Equality: Triple Vs. Double Equals05:39
-
162 Console, Alert, & Prompt05:03
-
163 Running JavaScript From A Script!05:46
-
164 If Statements06:25
-
165 Else-If08:33
-
166 Else08:48
-
167 Nesting Conditionals05:55
-
168 Truth-y & False-y Values05:16
-
169 Logical AND05:00
-
170 Logical OR09:07
-
171 Logical NOT05:40
-
172 The Switch Statement Is...A Lot09:31
-
-
Section 17: JavaScript Arrays
-
173 What Matters In This Section01:41
-
174 Introducing Arrays07:37
-
175 Array Random Access07:50
-
176 Push & Pop07:37
-
177 Shift & Unshift04:20
-
178 Concat, indexOf, includes & reverse05:57
-
179 Slice & Splice13:01
-
180 Reference Types & Equality Testing05:35
-
181 Arrays + Const04:25
-
182 Multi-Dimensional Arrays03:57
-
-
Section 18: JavaScript Object Literals
-
183 What Matters In This Section01:41
-
184 Introducing Object Literals04:45
-
185 Creating Object Literals03:56
-
186 Accessing Data Out Of Objects07:18
-
187 Modifying Objects04:31
-
188 Nesting Arrays & Objects06:29
-
-
Section 19: Repeating Stuff With Loops
-
189 What Matters In This Section02:37
-
190 Intro to For Loops07:10
-
191 More For Loops Examples05:29
-
192 The Perils Of Infinite Loops :(05:39
-
193 Looping Over Arrays05:59
-
194 Nested Loops08:39
-
195 Another Loop: The While Loop06:16
-
196 The Break Keyword04:19
-
197 Writing a Guessing Game11:20
-
198 Guessing Game Explanation And Bug Fixes15:39
-
199 The Lovely For...Of Loop06:21
-
200 Iterating Over Objects05:59
-
201 Todo List Project Intro05:14
-
202 Todo List Project CodeAlong19:00
-
-
Section 20: NEW: Introducing Functions
-
203 What Matters In This Section02:38
-
204 Intro to Functions04:05
-
205 Our Very First Function06:02
-
206 Arguments Intro08:07
-
207 Functions With Multiple Arguments07:57
-
208 The Return Keyword06:52
-
-
Section 21: Leveling Up Our Functions
-
209 What Matters In This Section03:40
-
210 Function Scope05:56
-
211 Block Scope04:52
-
212 Lexical Scope03:42
-
213 Function Expressions03:34
-
214 Higher Order Functions05:00
-
215 Returning Functions10:43
-
216 Defining Methods05:45
-
217 The Mysterious Keyword 'this'09:57
-
218 Using Try/Catch06:09
-
-
Section 22: Callbacks & Array Methods
-
219 What Matters In This Section03:10
-
220 What Is This Section Even About?!01:43
-
221 The forEach Method05:25
-
222 The map Method03:49
-
223 Intro to Arrow Functions05:15
-
224 Arrow Function Implicit Returns04:23
-
225 Arrow Functions Wrapup02:34
-
226 setTimeout and setInterval06:50
-
227 The filter Method06:33
-
228 Some & Every Methods03:21
-
229 The Notorious Reduce Method10:53
-
230 Arrow Functions & 'this'06:28
-
-
Section 23: Newer JavaScript Features
-
231 What Matters In This Section02:06
-
232 Default Params05:58
-
233 Spread in Function Calls05:01
-
234 Spread with Array Literals03:00
-
235 Spread with Objects05:19
-
236 Rest Params06:59
-
237 Destructuring Arrays03:22
-
238 Destructuring Objects05:38
-
239 Destructuring Params04:58
-
-
Section 24: Introducing The World Of The DOM
-
240 What Matters In This Section02:08
-
241 Introducing the DOM03:44
-
242 The Document Object09:52
-
243 getElementById06:51
-
244 getElementsByTagName & className08:15
-
245 querySelector & querySelectorAll07:16
-
246 innerHTML, textContent, & innerText12:54
-
247 Attributes07:03
-
248 Changing Styles11:42
-
249 ClassList07:27
-
250 Traversing Parent/Child/Sibling07:25
-
251 Append & AppendChild11:31
-
252 removeChild & remove03:39
-
253 Pokemon Sprites Demo10:02
-
-
Section 25: The Missing Piece: DOM Events
-
254 What Matters In This Section02:10
-
255 Intro to Events06:00
-
256 Inline Events05:44
-
257 The Onclick Property08:54
-
258 addEventListener09:22
-
259 Random Color Exercise08:33
-
260 Events & The Keyword This07:59
-
261 Keyboard Events & Event Objects11:43
-
262 NEW VERSION: Form Events & PreventDefault08:09
-
263 NEW VERSION: Practice With Form Events & PreventDefault08:57
-
264 ORIGINAL VERSION: Form Events & PreventDefault18:42
-
265 Input & Change Events05:27
-
266 Event Bubbling07:22
-
267 Event Delegation07:48
-
-
Section 26: Score Keeper CodeAlong
-
268 Score Keeper Pt. 113:03
-
269 Score Keeper Pt. 210:29
-
270 Score Keeper Pt. 3 With Bulma13:34
-
271 Score Keeper Pt. 4 Refactoring10:11
-
-
Section 27: Async JavaScript: Oh Boy!
-
272 What Matters In This Section01:58
-
273 The Call Stack11:30
-
274 WebAPIs & Single Threaded09:43
-
275 Callback Hell :(11:58
-
276 Demo: fakeRequest Using Callbacks09:45
-
277 Demo: fakeRequest Using Promises12:36
-
278 The Magic Of Promises07:38
-
279 Creating Our Own Promises10:35
-
280 The Async Keyword10:31
-
281 The Await Keyword08:11
-
282 Handling Errors In Async Functions04:28
-
-
Section 28: AJAX and API's
-
283 What Matters In This Section02:29
-
284 Intro to AJAX07:49
-
285 Intro to APIs10:26
-
286 WTF is JSON07:45
-
287 Using Hoppscotch (or Postman)07:02
-
288 HTTP Verbs03:02
-
289 HTTP Status Codes04:30
-
290 Understanding Query Strings08:42
-
291 HTTP Headers04:00
-
292 Making XHRs05:39
-
293 Using The Fetch API11:49
-
294 Introducing Axios06:27
-
295 Setting Headers With Axios11:24
-
296 TV Show Search App16:01
-
-
Section 29: Prototypes, Classes, & OOP
-
297 What Matters In This Section04:43
-
298 What On Earth Are Prototypes12:23
-
299 Intro to Object Oriented Programming07:13
-
300 Factory Functions09:00
-
301 Constructor Functions16:59
-
302 JavaScript Classes15:04
-
303 More Classes Practice10:18
-
304 Extends and Super Keywords10:05
-
-
Section 30: Mastering The Terminal
-
305 What Matters In This Section03:51
-
306 Backend Overview03:38
-
307 A Pep Talk On Terminal03:31
-
308 Why Do We Need To Know Terminal Commands?08:32
-
309 The Basics: LS & PWD05:12
-
310 Changing Directories04:33
-
311 Relative Vs. Absolute Paths05:31
-
312 Making Directories03:00
-
313 Man Pages & Flags06:20
-
314 The Touch Command04:29
-
315 Removing Files & Folders05:44
-
-
Section 31: Our First Brush With Node
-
316 What Matters In This Section02:53
-
317 Introducing Node JS05:35
-
318 What Is Node Used For?04:44
-
319 Installing Node01:53
-
320 The Node REPL04:58
-
321 Running Node Files02:48
-
322 Process & Argv07:42
-
323 File System Module Crash Course14:51
-
-
Section 32: Exploring Modules & The NPM Universe
-
324 What Matters In This Section02:52
-
325 Working With module.exports09:53
-
326 Requiring A Directory05:31
-
327 Introducing NPM03:03
-
328 Installing Packages - Jokes & Rainbow08:08
-
329 Adding Global Packages05:38
-
330 The All-Important Package.json07:55
-
331 Installing All Dependencies For A Project05:38
-
332 Language Guesser Challenge10:04
-
-
Section 33: Creating Servers With Express
-
333 What Matters In This Section02:48
-
334 Introducing Express05:44
-
335 Our Very First Express App09:55
-
336 The Request & Response Objects07:44
-
337 Express Routing Basics09:57
-
338 Express Path Parameters09:14
-
339 Working With Query Strings04:56
-
340 Auto-Restart With Nodemon03:51
-
-
Section 34: Creating Dynamic HTML With Templating
-
341 What Matters In This Section02:38
-
342 What is Templating?06:23
-
343 Configuring Express For EJS05:46
-
344 Setting The Views Directory04:32
-
345 EJS Interpolation Syntax03:29
-
346 Passing Data To Templates04:21
-
347 Subreddit Template Demo02:51
-
348 Conditionals in EJS07:12
-
349 Loops In EJS06:24
-
350 A More Complex Subreddit Demo10:52
-
351 Serving Static Assets In Express06:40
-
352 Bootstrap + Express08:04
-
353 EJS & Partials09:58
-
-
Section 35: Defining RESTful Routes
-
354 What Matters In This Section04:05
-
355 Get Vs. Post Requests06:33
-
356 Defining Express Post Routes04:03
-
357 Parsing The Request Body06:28
-
358 Intro to REST08:27
-
359 RESTful Comments Overview05:23
-
360 RESTful Comments Index06:38
-
361 RESTful Comments New08:13
-
362 Express Redirects05:43
-
363 RESTful Comments Show12:10
-
364 The UUID Package05:12
-
365 RESTful Comments Update10:33
-
366 Express Method Override11:48
-
367 RESTful Comments Delete10:18
-
-
Section 36: Our First Database: MongoDB
-
368 What Matters In This Section03:18
-
369 Introduction to Databases04:36
-
370 SQL Vs. NoSQL Databases08:50
-
371 Why We're Learning Mongo06:46
-
372 Installing Mongo: MacOS02:49
-
373 The Mongo Shell05:28
-
374 What On Earth Is BSON?03:07
-
375 Inserting With Mongo11:19
-
376 Finding With Mongo08:01
-
377 Updating With Mongo10:22
-
378 Deleting With Mongo04:27
-
379 Additional Mongo Operators11:00
-
-
Section 37: Connecting To Mongo With Mongoose
-
380 What Matters In This Section02:48
-
381 What is Mongoose04:07
-
382 Connecting Mongoose to Mongo08:08
-
383 Our First Mongoose Model10:19
-
384 Insert Many04:20
-
385 Finding With Mongoose09:23
-
386 Updating With Mongoose10:09
-
387 Deleting With Mongoose!04:55
-
388 Mongoose Schema Validations08:39
-
389 Additional Schema Constraints08:12
-
390 Validating Mongoose Updates03:55
-
391 Mongoose Validation Errors03:25
-
392 Model Instance Methods12:12
-
393 Adding Model Static Methods05:00
-
394 Mongoose Virtuals06:57
-
395 Defining Mongoose Middleware07:13
-
-
Section 38: Putting It All Together: Mongoose With Express
-
396 What Matters In This Section02:44
-
397 Express + Mongoose Basic Setup03:55
-
398 Creating Our Model11:16
-
399 Products Index05:18
-
400 Product Details08:13
-
401 Creating Products09:27
-
402 Updating Products14:01
-
403 Tangent On Category Selector08:12
-
404 Deleting Products04:53
-
405 BONUS: Filtering By Category08:19
-
-
Section 39: YelpCamp: Campgrounds CRUD
-
406 Introducing YelpCamp: Our Massive Project06:46
-
407 How to Access YelpCamp Code03:12
-
408 Creating the Basic Express App03:30
-
409 Campground Model Basics07:09
-
410 Seeding Campgrounds10:35
-
411 Campground Index03:36
-
412 Campground Show03:54
-
413 Campground New & Create07:37
-
414 Campground Edit & Update08:57
-
415 Campground Delete03:22
-
-
Section 40: Middleware: The Key To Express
-
416 What Matters In This Section01:20
-
417 Intro to Express Middleware03:40
-
418 Using Morgan - Logger Middleware07:08
-
419 Defining Our Own Middleware08:13
-
420 More Middleware Practice08:11
-
421 Setting Up A 404 Route05:18
-
422 Password Middleware Demo (NOT REAL AUTH)04:40
-
423 Protecting Specific Routes05:15
-
-
Section 41: YelpCamp: Adding Basic Styles
-
424 A New EJS Tool For Layouts06:29
-
425 Bootstrap5! Boilerplate03:24
-
426 Navbar Partial04:45
-
427 Footer Partial04:17
-
428 Adding Images06:00
-
429 Styling Campgrounds Index04:46
-
430 Styling The New Form09:00
-
431 Styling Edit Form03:13
-
432 Styling Show Page07:39
-
-
Section 42: Handling Errors In Express Apps
-
433 What Matters In This Section01:51
-
434 Express' Built-In Error Handler08:01
-
435 Defining Custom Error Handlers08:49
-
436 Our Custom Error Class12:40
-
437 Handling Async Errors11:41
-
438 Handling More Async Errors!07:35
-
439 Defining An Async Utility07:50
-
440 Differentiating Mongoose Errors08:49
-
-
Section 43: YelpCamp: Errors & Validating Data
-
441 Where To Next With YelpCamp?02:20
-
442 Client-Side Form Validations10:19
-
443 Basic Error Handler03:03
-
444 Defining ExpressError Class07:06
-
445 More Errors07:42
-
446 Defining Error Template05:09
-
447 JOI Schema Validations11:16
-
448 JOI Validation Middleware10:49
-
-
Section 44: Data Relationships With Mongo
-
449 What Matters In This Section03:44
-
450 Introduction to Mongo Relationships04:13
-
451 SQL Relationships Overview08:25
-
452 One to Few12:36
-
453 One to Many13:27
-
454 Mongoose Populate03:32
-
455 One to "Bajillions"13:58
-
456 Mongo Schema Design08:21
-
-
Section 45: Mongo Relationships With Express
-
457 What Matters In This Section02:21
-
458 Defining Our Farm & Product Models06:26
-
459 Creating New Farms08:54
-
460 Farms Show Page04:35
-
461 Creating Products For A Farm10:44
-
462 Finishing Touches10:58
-
463 Deletion Mongoose Middleware13:31
-
-
Section 46: YelpCamp: Adding The Reviews Model
-
464 Defining The Review Model05:15
-
465 Adding The Review Form05:20
-
466 Creating Reviews06:32
-
467 Validating Reviews09:06
-
468 Displaying Reviews06:06
-
469 Styling Reviews04:52
-
470 Deleting Reviews08:16
-
471 Campground Delete Middleware09:27
-
-
Section 47: Express Router & Cookies
-
472 What Matters In This Section02:19
-
473 Express Router Intro10:43
-
474 Express Router & Middleware04:53
-
475 Introducing Cookies07:56
-
476 Sending Cookies06:42
-
477 Cookie Parser Middleware05:25
-
478 Signing Cookies10:11
-
479 OPTIONAL: HMAC Signing06:26
-
-
Section 48: Express Session & Flash
-
480 What Matters In This Section01:30
-
481 Introduction to Sessions05:19
-
482 Express Session11:39
-
483 More Express Session07:51
-
484 Intro to Flash06:42
-
485 Res.locals & Flash03:22
-
-
Section 49: YelpCamp: Restructuring & Flash
-
486 Breaking Out Campground Routes06:01
-
487 Breaking Out Review Routes05:34
-
488 Serving Static Assets05:47
-
489 Configuring Session06:48
-
490 Setting Up Flash05:22
-
491 Flash Success Partial07:03
-
492 Flash Errors Partial04:06
-
-
Section 50: Authentication From "Scratch"
-
493 What Matters In This Section04:34
-
494 Authentication Vs. Authorization03:31
-
495 How to (not) Store Passwords05:01
-
496 Cryptographic Hashing Functions07:05
-
497 Password Salts11:29
-
498 Intro to Bcrypt13:01
-
499 Auth Demo: Setup07:25
-
500 Auth Demo: Registering06:14
-
501 Auth Demo: Login07:21
-
502 Auth Demo: Staying Logged In With Session07:32
-
503 Auth Demo: Logout05:58
-
504 Auth Demo: Require Login Middleware03:22
-
505 Auth Demo: Refactoring To Model Methods13:48
-
-
Section 51: YelpCamp: Adding In Authentication
-
506 Introduction to Passport04:43
-
507 Creating Our User Model04:07
-
508 Configuring Passport09:15
-
509 Register Form07:01
-
510 Register Route Logic06:20
-
511 Login Routes05:40
-
512 isLoggedIn Middleware08:55
-
513 Adding Logout03:59
-
514 currentUser Helper04:54
-
515 Fixing Register Route03:42
-
516 ReturnTo Behavior04:52
-
-
Section 52: YelpCamp: Basic Authorization
-
517 Adding an Author to Campground07:20
-
518 Showing and Hiding Edit/Delete03:01
-
519 Campground Permissions06:57
-
520 Authorization Middleware08:42
-
521 Reviews Permissions05:44
-
522 More Reviews Authorization12:49
-
-
Section 53: YelpCamp: Controllers & Star Ratings
-
523 Refactoring To Campgrounds Controller09:50
-
524 Adding a Reviews Controller06:08
-
525 A Fancy Way To Restructure Routes05:57
-
526 Displaying Star Ratings08:01
-
527 Star Rating Form04:58
-
-
Section 54: YelpCamp: Image Upload
-
528 Intro To Image Upload Process03:31
-
529 The Multer Middleware09:58
-
530 Cloudinary Registration02:34
-
531 Environment Variables with dotenv06:21
-
532 Uploading To Cloudinary Basics09:01
-
533 Storing Uploaded Image Links In Mongo11:29
-
534 Displaying Images In A Carousel08:39
-
535 Fixing Our Seeds02:43
-
536 Adding Upload to Edit Page05:59
-
537 Customizing File Input08:41
-
538 A Word Of Warning!02:50
-
539 Deleting Images Form06:50
-
540 Deleting Images Backend06:08
-
541 Adding a Thumbnail Virtual Property10:48
-
-
Section 55: YelpCamp: Adding Maps
-
542 Registering For Mapbox04:36
-
543 Geocoding Our Locations10:51
-
544 Working With GeoJSON06:27
-
545 Displaying A Map08:11
-
546 Centering The Map On A Campground08:11
-
547 Fixing Our Seeds Bug06:17
-
548 Customizing Map Popup04:21
-
-
Section 56: YelpCamp: Fancy Cluster Map
-
549 Intro To Our Cluster Map02:33
-
550 Adding Earthquake Cluster Map05:48
-
551 Reseeding Our Database (again)02:42
-
552 Basic Clustering Campgrounds07:29
-
553 Tweaking Clustering Code07:03
-
554 Changing Cluster Size and Color07:11
-
555 Adding Custom Popups15:39
-
-
Section 57: YelpCamp: Styles Clean Up
-
556 Styling Home Page09:21
-
557 Additional Home Page Styling06:30
-
558 Styling Login Form03:48
-
559 Styling Register Form03:41
-
560 Spacing Campgrounds00:28
-
561 Removing Inline Map Styles02:54
-
562 Adding Map Controls03:14
-
-
Section 58: YelpCamp: Common Security Issues
-
563 Mongo Injection07:46
-
564 Cross Site Scripting (XSS)05:59
-
565 Sanitizing HTML w/ JOI11:27
-
566 Minor Changes to Session/Cookies03:26
-
567 Hiding Errors02:17
-
568 Using Helmet05:36
-
569 Content Security Policy Fun08:25
-
-
Section 59: YelpCamp: Deploying
-
570 Setting Up Mongo Atlas09:53
-
571 Using Mongo For Our Session Store06:59
-
572 Heroku Setup03:42
-
573 Pushing to Heroku05:34
-
574 Fixing Heroku Errors04:36
-
575 Configuring Heroku Env Variables06:44
-
-
Section 60: Introducing React
-
576 How The React Content Works02:49
-
577 Introducing React07:05
-
578 Setting Up Code Sand Box05:17
-
579 The Basics of JSX04:16
-
580 Basic React App Structure03:10
-
581 Our First React Component04:58
-
-
Section 61: JSX In Detail
-
582 Importing and Exporting Components08:02
-
583 The Rules of JSX04:51
-
584 React Fragments02:09
-
585 Evaluating JS Expressions in JSX03:20
-
586 Creating. a Die Component02:47
-
587 Component Decomposition05:56
-
588 Styling Components08:19
-
589 Random PokeCard Exercise09:15
-
-
Section 62: Local React Apps With Vite
-
590 Creating React Apps With Vite05:57
-
591 A Note About Create React App01:29
-
592 A Tour of A Vite App06:24
-
-
Section 63: Working With Props
-
593 Introducing Props05:56
-
594 Non-String Props06:01
-
595 Setting Default Prop Values01:34
-
596 Passing Arrays and Objects04:22
-
597 React Conditionals09:42
-
598 The React Developer Tools03:37
-
599 Adding Dynamic Component Styles08:29
-
600 Rendering Arrays With Map08:36
-
601 Slot Machine Exercise06:16
-
-
Section 64: Shopping List Demo: keys, prop types, and more!
-
602 Creating A Shopping List Component08:01
-
603 The Key Prop03:59
-
604 The Shopping List Item Component11:00
-
605 Rental Property Exercise07:10
-
606 Configuring ESLint03:35
-
607 PropTypes Library Crash Course04:40
-
-
Section 65: React Events
-
608 Intro to React Events05:19
-
609 Non-Click Events02:49
-
610 Working With The Event Object03:43
-
611 Clicker Exercise02:47
-
-
Section 66: The Basics of React State
-
612 Introducing State08:50
-
613 Working With The useState() Hook08:33
-
614 Creating a Toggler Component08:00
-
615 Multiple Pieces of State In A Component03:38
-
616 useState() and Rendering07:16
-
617 Color Box Exercise INTRO01:59
-
618 Color Box Exercise SOLUTION15:37
-
-
Section 67: Intermediate State Concepts
-
619 Setting State With An Updater Function10:51
-
620 State Initializer Functions06:21
-
621 When Does React Re-Render?02:54
-
622 Working With Objects In State10:35
-
623 Arrays In State07:42
-
624 Generating Ids with UUID04:03
-
625 Deleting From Arrays The React Way07:37
-
626 Common Array Updating Patterns09:02
-
627 Updating All Elements In An Array04:21
-
628 Score Keeper Exercise12:25
-
-
Section 68: Component Design
-
629 Introducing The Lucky7 Game06:24
-
630 Formulating Our Component Gameplan05:36
-
631 Building Die and Dice Components07:28
-
632 The LuckyN Component10:01
-
633 State As Props01:34
-
634 Passing Functions As Props07:42
-
635 Passing Functions That Update State09:00
-
636 Practice Passing State Updating Functions14:56
-
-
Section 69: React Forms
-
637 Controlled Components09:14
-
638 The htmlFor Property02:07
-
639 Working With Multiple Inputs04:32
-
640 A Better Signup Form08:09
-
641 Computed Property Names in HandleChange()03:37
-
642 Creating a Shopping List Form06:35
-
643 Shopping List Component09:38
-
644 Finishing The Shopping List Component05:17
-
645 Form Validation From Scratch09:55
-
646 Validations using React Hook Form11:48
-
-
Section 70: Effects
-
647 Introducing Effects01:33
-
648 The useEffect Hook04:14
-
649 useEffect Dependencies04:34
-
650 Fetching Initial Data From an API10:29
-
651 Adding a Loader06:11
-
652 Github Profile Search04:24
-
-
Section 71: Material UI
-
653 Introducing Material UI01:49
-
654 Installing Material UI08:29
-
655 The Rating Component04:02
-
656 Material Forms06:33
-
657 The SX Prop and Custom Styles07:59
-
-
Section 72: Building a Todo List With Material UI & Local Storage
-
658 Creating The Application04:00
-
659 The TodoList Component08:28
-
660 Removing Todos07:15
-
661 Toggling Todos03:33
-
662 The New Todo Form11:18
-
663 Adding LocalStorage04:26
-
664 Tweaking the Todo Icons and Ids02:57
-
665 Final Styles05:46
-
-
Section 73: BONUS: Fancy, More Advanced Todolist
-
666 Check Out This Fancy Todo List03:09
-
-
Section 74: The End :(
-
667 What's Next and Goodbye!09:41
-
-
Section 75: LEGACY CONTENT (The Old Version Of This Course)
This comprehensive course is designed to equip you with the skills to become a proficient web developer. You'll journey through the fundamentals of web development, mastering HTML, CSS, and JavaScript. Furthermore, you'll delve into advanced topics including React, Node.js, and MongoDB. This is your all-in-one course for learning web development. It was originally published on Udemy, and we are glad to offer it for free streaming here. If you find this course exceptionally helpful, please consider buying the original course to support Colt Steele and help him keep making awesome content!
Course Details
- Instructor: Colt Steele
- Total Sections: 75
- Total Lectures: 731
- URL of original content: https://udemy.com/course/the-web-developer-bootcamp/
- Contributor: Sourav
Thank you so much Sourav for sharing this course.
By the end of the course, youll be able to:
- Build websites using HTML, CSS, and JavaScript.
- Understand the fundamental concepts of web development.
- Create interactive web applications with React.
- Utilize Node.js for backend development.
- Work with databases using MongoDB.
- Design responsive and user-friendly interfaces.
- Apply CSS frameworks like Bootstrap.
- Implement server-side logic using Express.
- Manage user authentication.
- Deploy full-stack web applications.
The Web Developer Bootcamp 2024 is a meticulously structured course designed for individuals aspiring to become web developers. The curriculum begins with the core technologies of HTML, CSS, and JavaScript, providing a solid foundation for further learning. It then advances into more complex areas such as React, Node.js, and MongoDB. This course covers both front-end and back-end development, providing a holistic approach to web development.
The course includes a mix of lectures and practical coding exercises, ensuring a well-rounded educational experience. Students will have the opportunity to apply their learning through hands-on projects, such as the YelpCamp application. The course also covers advanced topics like authentication, authorization, image uploads, and mapping. It is designed to guide students from beginners to proficient web developers.
Happy learning!