UDEMY.The.Web.Developer.Bootcamp.2026.BOOKWARE-MiMiR
NFO
Mímir, Keeper of the Well of Wisdom
The Web Developer Bootcamp 2026
https://www.udemy.com/course/the-web-developer-bootcamp/
Year : 2026
Language : English
Level : All Levels
Category : Development
Subcategory : Web Development
Duration : 73h 23m
Lectures : 704
Rating : 4.7/5 (284,694 reviews)
Students : 951,551
INSTRUCTOR(S)
HEADLINE
With 10 Hours of React added. Become a Developer With ONE
course - HTML, CSS, JavaScript, React, Node, MongoDB and
More!
WHAT YOU'LL LEARN
* The ins and outs of HTML5, CSS3, and Modern JavaScript
* 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
REQUIREMENTS
* 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
WHO IS THIS COURSE FOR
* 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
DESCRIPTION
Now with over 10 hours of React content. Massive new React
"expansion pack" covers: React basics, JSX, props, state,
Vite,
MaterialUI, hooks, useEffect, React design patterns, and more.
Hi! Welcome to the brand new version of The Web Developer
Bootcamp, Udemy's most popular web development course. This
course was completely overhauled to prepare students for the
current job market, now with over 70 hours of total 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. 92% 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 latest modern content for a fraction of
the price. Everything I cover is up-to-date and relevant to
the
current developer job market. This course does not cut any
corners. I 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: HTML5 CSS3
Flexbox Responsive Design JavaScript (including modern syntax,
ES6, ES2018, etc.) Asynchronous JavaScript - Promises,
async/await, etc. AJAX and single page apps Bootstrap 4 and 5
ReactJS SemanticUI Bulma CSS Framework DOM Manipulation Unix
(Command Line) Commands NodeJS NPM ExpressJS Templating REST
SQL vs. NoSQL databases MongoDB Database Associations Schema
Design Mongoose Authentication From Scratch Cookies & Sessions
Authorization Common Security Issues - SQL Injection, XSS,
etc.
Developer Best Practices Deploying Apps Cloud Databases Image
Upload and Storage Maps and Geocoding This 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: Lectures
Code-
Alongs Projects Exercises Research Assignments Slides
Downloads
Readings Too many pictures of my dog Rusty If 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!
COURSE CONTENT
Chapter 1: Course Orientation
1. Welcome To The Course!
2. Joining The Community Chat & Groups
3. Curriculum Walkthrough
4. When Was The Course Last Updated?
5. Course Change Log
6. Will I Get A Job?
7. Accessing Course Code & Slides
8. Tips On The Interactive Coding Exercises
9. Course Coding Exercise Solutions
10. Migrating From The Old Version Of This Course
Chapter 2: An Introduction to Web Development
11. What Matters In This Section?
12. The Internet in 5 Minutes
13. Intro to the Web
14. The Request/Response Cycle
15. Front-End and Back-End
16. What do HTML/CSS/JS do?
17. Setting Up Our Developer Environment
18. Windows Users: Setting up VS Code on Windows
19. OPTIONAL VSCode Theme
Chapter 3: HTML: The Essentials
20. What Matters In This Section
21. Introduction to HTML
22. Our Very First HTML Page
23. TIP: Mozilla Developer Network
24. Paragraph Elements
25. Heading Elements
26. Introduction to the Chrome Inspector
27. HTML Boilerplate
28. VSCode Tip: Auto-format
29. List Elements
30. Anchor Tags
31. Images
32. Comments
Chapter 4: HTML: Next Steps & Semantics
33. What Matters In This Section
34. What Exactly Is HTML5?
35. Block vs. Inline Elements - Divs and Spans
36. An Odd Assortment of Elements: HR, BR, Sup, & Sub
37. Entity Codes
38. Intro to Semantic Markup
39. Playing With Semantic Elements
40. Screen Reader Demonstration
41. VSCode Tip: Emmet
Chapter 5: HTML: Forms & Tables
42. What Matters In This Section
43. Unit Goals
44. Introducing HTML Tables
45. Tables: TR, TD, and TH Elements
46. Tables: Thead, Tbody, and Tfoot Elements
47. Tables: Colspan & Rowspan
48. The Form Element
49. Common Input Types
50. The All-Important Label
51. HTML Buttons
52. The Name Attribute
53. "Hijacking" Google & Reddit's Search
54. Radio Buttons, Checkboxes, & Selects
55. Range & Text Area
56. HTML5 Form Validations
57. Creating A Marathon Registration Form Intro
58. Creating A Marathon Registration Form Solution
Chapter 6: CSS: The Very Basics
59. What Matters In This Section
60. What is CSS?
61. CSS is Huge, Don't Panic!
62. Including Styles Correctly
63. Color & Background-Color Properties
64. Colors Systems: RGB & Named Colors
65. Colors Systems: Hexadecimal
66. A Reminder On Semicolons & CSS
67. Common Text Properties
68. Font Size Basics With Pixels
69. The Font Family Property
Chapter 7: The World of CSS Selectors
70. What Matters In This Section
71. Universal & Element Selectors
72. The ID Selector
73. The Class Selector
74. The Descendant Selector
75. The Adjacent & Direct-Descendant Selectors
76. The Attribute Selector
77. Pseudo Classes
78. Pseudo Elements
79. The CSS Cascade
80. WTF is Specificity
81. TIP: Chrome Dev Tools & CSS
82. Inline Styles & Important
83. CSS Inheritance
Chapter 8: The CSS Box Model
84. What Matters In This Section
85. Box Model: Width & Height
86. Box Model: Border & Border-Radius
87. Box Model: Padding
88. Box Model: Margin
89. The Display Property
90. CSS Units Revisited
91. CSS Units: ems
92. CSS Units: rems
Chapter 9: Other Assorted Useful CSS Properties
93. What Matters In This Section
94. Opacity & The Alpha Channel
95. The Position Property
96. CSS Transitions (yay!)
97. The Power of CSS Transforms
98. Fancy Button Hover Effect CodeAlong
99. The Truth About Background
100. Google Fonts is Amazing
101. IMPORTANT REMINDER: How To Find And Download Course
Code
102. Photo Blog CodeAlong Pt. 1
103. Photo Blog CodeAlong Pt. 2
Chapter 10: Responsive CSS & Flexbox
104. What Matters In This Section
105. What on Earth Is Flexbox?
106. Flex-Direction
107. Justify-Content
108. Flex-Wrap
109. Align-Items
110. Align-Content & Align-Self
111. Flex-Basis, Grow, & Shrink
112. Flex Shorthand
113. Responsive Design & Media Queries Intro
114. The Power of Media Queries
115. NOTE: Fixing The Code Order In The Next Lecture
116. Building a Responsive Nav
Chapter 11: Pricing Panel Project
117. Pricing Panel CodeAlong Pt. 1
118. Pricing Panel CodeAlong Pt. 2
119. Pricing Panel CodeAlong Pt. 3
120. Pricing Panel CodeAlong Pt. 4
121. Pricing Panel CodeAlong Pt. 5
122. Pricing Panel CodeAlong Pt. 6
Chapter 12: CSS Frameworks: Bootstrap
123. What Matters In This Section
124. IMPORTANT NOTE, PLEASE READ: About Using The Correct
Bootstrap Version!
125. WTF Is Bootstrap
126. Including Bootstrap & Containers
127. Bootstrap Buttons
128. Bootstrap Typography & Utilities
129. Badges, Alerts, & Button Groups
130. Intro to the Bootstrap Grid
131. Responsive Bootstrap Grids
132. Useful Grid Utilities
133. Bootstrap & Forms
134. Bootstrap Navbars
135. Bootstrap Icons!
136. Other Bootstrap Utilities
137. A Mixed Bag of Other Bootstrap Stuff
Chapter 13: OPTIONAL Museum Of Candy Project
138. Watch This First! (it's short)
139. IMPORTANT REMINDER: About Using The Correct Bootstrap
Version
140. Museum of Candy Project Part 1
141. NOTE ABOUT THE NEXT VIDEO!
142. Museum of Candy Project Part 2
143. Museum of Candy Project Part 3
144. Museum of Candy Project Part 4
145. Museum of Candy Project Part 5
Chapter 14: JavaScript Basics!
146. What Matters In This Section
147. Why JavaScript is Awesome
148. Primitives & The Console
149. JavaScript Numbers
150. WTF is NaN
151. Quick Numbers Quiz
152. Variables & Let
153. Updating Variables
154. Increment Operator Explanation: i++ vs ++i
155. Const & Var
156. Booleans
157. Variable Naming and Conventions
Chapter 15: JavaScript Strings and More
158. What Matters In This Section
159. Introducing Strings
160. Indices & Length
161. String Methods
162. String Methods With Arguments
163. String Template Literals -SUPER USEFUL
164. Undefined & Null
165. Random Numbers & The Math Object
Chapter 16: JavaScript Decision Making
166. What Matters In This Section
167. Decision Making With Code??
168. Comparison Operators
169. Equality: Triple Vs. Double Equals
170. Console, Alert, & Prompt
171. Running JavaScript From A Script!
172. If Statements
173. Else-If
174. Else
175. Nesting Conditionals
176. Truth-y & False-y Values
177. Logical AND
178. Logical OR
179. Logical NOT
180. The Switch Statement Is...A Lot
Chapter 17: JavaScript Arrays
181. What Matters In This Section
182. Introducing Arrays
183. Array Random Access
184. Push & Pop
185. Shift & Unshift
186. Concat, indexOf, includes & reverse
187. Slice & Splice
188. Reference Types & Equality Testing
189. Arrays + Const
190. Multi-Dimensional Arrays
Chapter 18: JavaScript Object Literals
191. What Matters In This Section
192. Introducing Object Literals
193. Creating Object Literals
194. Accessing Data Out Of Objects
195. Modifying Objects
196. Nesting Arrays & Objects
Chapter 19: Repeating Stuff With Loops
197. What Matters In This Section
198. Intro to For Loops
199. More For Loops Examples
200. The Perils Of Infinite Loops :(
201. Looping Over Arrays
202. Nested Loops
203. Another Loop: The While Loop
204. The Break Keyword
205. Writing a Guessing Game
206. Guessing Game Explanation And Bug Fixes
207. The Lovely For...Of Loop
208. Iterating Over Objects
209. Todo List Project Intro
210. Todo List Project CodeAlong
Chapter 20: NEW: Introducing Functions
211. What Matters In This Section
212. Intro to Functions
213. Our Very First Function
214. Arguments Intro
215. Functions With Multiple Arguments
216. The Return Keyword
Chapter 21: Leveling Up Our Functions
217. What Matters In This Section
218. Function Scope
219. Block Scope
220. Lexical Scope
221. Function Expressions
222. Higher Order Functions
223. Returning Functions
224. Defining Methods
225. The Mysterious Keyword 'this'
226. Using Try/Catch
Chapter 22: Callbacks & Array Methods
227. What Matters In This Section
228. What Is This Section Even About?!
229. The forEach Method
230. The map Method
231. Intro to Arrow Functions
232. Arrow Function Implicit Returns
233. Arrow Functions Wrapup
234. setTimeout and setInterval
235. The filter Method
236. Some & Every Methods
237. The Notorious Reduce Method
238. Arrow Functions & 'this'
Chapter 23: Newer JavaScript Features
239. What Matters In This Section
240. Default Params
241. Spread in Function Calls
242. Spread with Array Literals
243. Spread with Objects
244. Rest Params
245. Destructuring Arrays
246. Destructuring Objects
247. Destructuring Params
Chapter 24: Introducing The World Of The DOM
248. What Matters In This Section
249. Introducing the DOM
250. The Document Object
251. getElementById
252. getElementsByTagName & className
253. querySelector & querySelectorAll
254. innerHTML, textContent, & innerText
255. Attributes
256. Changing Styles
257. ClassList
258. Traversing Parent/Child/Sibling
259. Append & AppendChild
260. removeChild & remove
261. Pokemon Sprites Demo
Chapter 25: The Missing Piece: DOM Events
262. What Matters In This Section
263. Intro to Events
264. Inline Events
265. The Onclick Property
266. addEventListener
267. Random Color Exercise
268. Events & The Keyword This
269. Keyboard Events & Event Objects
270. NEW VERSION: Form Events & PreventDefault
271. NEW VERSION: Practice With Form Events & PreventDefault
272. ORIGINAL VERSION: Form Events & PreventDefault
273. Input & Change Events
274. Event Bubbling
275. Event Delegation
Chapter 26: Score Keeper CodeAlong
276. Score Keeper Pt. 1
277. Score Keeper Pt. 2
278. Score Keeper Pt. 3 With Bulma
279. Score Keeper Pt. 4 Refactoring
Chapter 27: Async JavaScript: Oh Boy!
280. What Matters In This Section
281. The Call Stack
282. WebAPIs & Single Threaded
283. Callback Hell :(
284. Demo: fakeRequest Using Callbacks
285. Demo: fakeRequest Using Promises
286. The Magic Of Promises
287. Creating Our Own Promises
288. The Async Keyword
289. The Await Keyword
290. Handling Errors In Async Functions
Chapter 28: AJAX and API's
291. What Matters In This Section
292. Intro to AJAX
293. Intro to APIs
294. What is JSON
295. Using Hoppscotch (or Postman)
296. HTTP Verbs
297. HTTP Status Codes
298. Understanding Query Strings
299. HTTP Headers
300. IMPORTANT NOTE: SWAPI API Changes
301. Making XHRs
302. Using The Fetch API
303. Introducing Axios
304. Setting Headers With Axios
305. TV Show Search App
Chapter 29: Prototypes, Classes, & OOP
306. What Matters In This Section
307. What On Earth Are Prototypes
308. Intro to Object Oriented Programming
309. Factory Functions
310. Constructor Functions
311. JavaScript Classes
312. More Classes Practice
313. Extends and Super Keywords
Chapter 30: Mastering The Terminal
314. What Matters In This Section
315. Backend Overview
316. A Pep Talk On Terminal
317. Why Do We Need To Know Terminal Commands?
318. IMPORTANT: Windows Terminal Installation Instructions -
Git Bash
319. The Basics: LS & PWD
320. Changing Directories
321. Relative Vs. Absolute Paths
322. Making Directories
323. Man Pages & Flags
324. The Touch Command
325. Removing Files & Folders
Chapter 31: Our First Brush With Node
326. What Matters In This Section
327. Introducing Node JS
328. What Is Node Used For?
329. Installing Node
330. Windows Users: Installing Node.js on Windows
331. The Node REPL
332. Running Node Files
333. Process & Argv
334. IMPORTANT NOTE: fs.writeFileSync Changes
335. File System Module Crash Course
Chapter 32: Exploring Modules & The NPM Universe
336. What Matters In This Section
337. Working With module.exports
338. Requiring A Directory
339. Introducing NPM
340. Installing Packages - Jokes & Rainbow
341. Adding Global Packages
342. The All-Important Package.json
343. Installing All Dependencies For A Project
344. IMPORTANT NOTE: Fixing Issues ? Language Guesser
Challenge
345. Language Guesser Challenge
Chapter 33: Creating Servers With Express
346. What Matters In This Section
347. Introducing Express
348. Our Very First Express App
349. The Request & Response Objects
350. IMPORTANT NOTE: Solving a Potential Error With the Star
* (Catch-All) Route
351. Express Routing Basics
352. Express Path Parameters
353. Working With Query Strings
354. Auto-Restart With Nodemon
Chapter 34: Creating Dynamic HTML With Templating
355. What Matters In This Section
356. What is Templating?
357. Configuring Express For EJS
358. Setting The Views Directory
359. EJS Interpolation Syntax
360. Passing Data To Templates
361. Subreddit Template Demo
362. Conditionals in EJS
363. Loops In EJS
364. A More Complex Subreddit Demo
365. Serving Static Assets In Express
366. Bootstrap + Express
367. EJS & Partials
Chapter 35: Defining RESTful Routes
368. What Matters In This Section
369. Get Vs. Post Requests
370. Defining Express Post Routes
371. Parsing The Request Body
372. Intro to REST
373. RESTful Comments Overview
374. RESTful Comments Index
375. RESTful Comments New
376. Express Redirects
377. RESTful Comments Show
378. The UUID Package
379. RESTful Comments Update
380. Express Method Override
381. RESTful Comments Delete
Chapter 36: Our First Database: MongoDB
382. What Matters In This Section
383. Introduction to Databases
384. SQL Vs. NoSQL Databases
385. Why We're Learning Mongo
386. Installing Mongo: MacOS
387. Installing Mongo: Windows
388. IMPORTANT NOTE: About The Mongo Shell
389. The Mongo Shell
390. What On Earth Is BSON?
391. Inserting With Mongo
392. Finding With Mongo
393. Updating With Mongo
394. Deleting With Mongo
395. Additional Mongo Operators
Chapter 37: Connecting To Mongo With Mongoose
396. What Matters In This Section
397. What is Mongoose
398. A note about solving mongoose connection issues
399. Connecting Mongoose to Mongo
400. A note about the node .load index.js command issue
401. Our First Mongoose Model
402. Insert Many
403. Finding With Mongoose
404. Updating With Mongoose
405. IMPORTANT NOTE: Deprecated Mongoose .remove() Method
406. Deleting With Mongoose!
407. Mongoose Schema Validations
408. Additional Schema Constraints
409. Validating Mongoose Updates
410. Mongoose Validation Errors
411. Model Instance Methods
412. Adding Model Static Methods
413. Mongoose Virtuals
414. Defining Mongoose Middleware
Chapter 38: Putting It All Together: Mongoose With Express
415. What Matters In This Section
416. Express + Mongoose Basic Setup
417. Creating Our Model
418. Products Index
419. Product Details
420. Creating Products
421. Updating Products
422. Tangent On Category Selector
423. Deleting Products
424. BONUS: Filtering By Category
Chapter 39: YelpCamp: Campgrounds CRUD
425. Introducing YelpCamp: Our Massive Project
426. How to Access YelpCamp Code
427. Creating the Basic Express App
428. Campground Model Basics
429. Seeding Campgrounds
430. Campground Index
431. Campground Show
432. Campground New & Create
433. Campground Edit & Update
434. Campground Delete
Chapter 40: Middleware: The Key To Express
435. What Matters In This Section
436. Intro to Express Middleware
437. Using Morgan - Logger Middleware
438. Defining Our Own Middleware
439. More Middleware Practice
440. Setting Up A 404 Route
441. Password Middleware Demo (NOT REAL AUTH)
442. Protecting Specific Routes
Chapter 41: YelpCamp: Adding Basic Styles
443. A New EJS Tool For Layouts
444. Bootstrap5! Boilerplate
445. Navbar Partial
446. Footer Partial
447. IMPORTANT NOTE: About Adding Images ? FIX FOR SEEDED
IMAGES NOT WORKING
448. Adding Images
449. Styling Campgrounds Index
450. Styling The New Form
451. Styling Edit Form
452. Styling Show Page
Chapter 42: Handling Errors In Express Apps
453. What Matters In This Section
454. Express' Built-In Error Handler
455. Defining Custom Error Handlers
456. Our Custom Error Class
457. Handling Async Errors
458. Handling More Async Errors!
459. Defining An Async Utility
460. Differentiating Mongoose Errors
Chapter 43: YelpCamp: Errors & Validating Data
461. Where To Next With YelpCamp?
462. Client-Side Form Validations
463. Basic Error Handler
464. Defining ExpressError Class
465. IMPORTANT NOTE: Solving a Potential Error With the Star
* (Catch-All) Route
466. More Errors
467. Defining Error Template
468. JOI Schema Validations
469. JOI Validation Middleware
Chapter 44: Data Relationships With Mongo
470. What Matters In This Section
471. Introduction to Mongo Relationships
472. SQL Relationships Overview
473. Note: Solving an upcoming code issue with mongoose
version 7
474. One to Few
475. One to Many
476. Mongoose Populate
477. One to "Bajillions"
478. Mongo Schema Design
Chapter 45: Mongo Relationships With Express
479. What Matters In This Section
480. Defining Our Farm & Product Models
481. Note about Farm model
482. Creating New Farms
483. Farms Show Page
484. Creating Products For A Farm
485. Finishing Touches
486. Deletion Mongoose Middleware
Chapter 46: YelpCamp: Adding The Reviews Model
487. Defining The Review Model
488. Adding The Review Form
489. Creating Reviews
490. Validating Reviews
491. Displaying Reviews
492. Styling Reviews
493. Deleting Reviews
494. Campground Delete Middleware
Chapter 47: Express Router & Cookies
495. What Matters In This Section
496. Express Router Intro
497. Express Router & Middleware
498. Introducing Cookies
499. Sending Cookies
500. Cookie Parser Middleware
501. Signing Cookies
502. OPTIONAL: HMAC Signing
Chapter 48: Express Session & Flash
503. What Matters In This Section
504. Introduction to Sessions
505. Express Session
506. More Express Session
507. Intro to Flash
508. Res.locals & Flash
Chapter 49: YelpCamp: Restructuring & Flash
509. Breaking Out Campground Routes
510. Breaking Out Review Routes
511. Serving Static Assets
512. Configuring Session
513. Setting Up Flash
514. Flash Success Partial
515. Flash Errors Partial
Chapter 50: Authentication From "Scratch"
516. What Matters In This Section
517. Authentication Vs. Authorization
518. How to (not) Store Passwords
519. Cryptographic Hashing Functions
520. Password Salts
521. Intro to Bcrypt
522. Auth Demo: Setup
523. Auth Demo: Registering
524. Auth Demo: Login
525. Auth Demo: Staying Logged In With Session
526. Auth Demo: Logout
527. Auth Demo: Require Login Middleware
528. ??IMPORTANT: Mongoose Version Change: Pre middleware no
longer supports next()??
529. Auth Demo: Refactoring To Model Methods
Chapter 51: YelpCamp: Adding In Authentication
530. Introduction to Passport
531. ??IMPORTANT: Solving a version error with passport-
local-mongoose??
532. Creating Our User Model
533. Configuring Passport
534. Register Form
535. Register Route Logic
536. Login Routes
537. isLoggedIn Middleware
538. IMPORTANT: Fixing Logout
539. Adding Logout
540. currentUser Helper
541. Fixing Register Route
542. IMPORTANT: Passport.js Updates ? Fixing The
returnTo/Redirect Issue
543. ReturnTo Behavior
Chapter 52: YelpCamp: Basic Authorization
544. Adding an Author to Campground
545. Showing and Hiding Edit/Delete
546. Campground Permissions
547. Authorization Middleware
548. Reviews Permissions
549. More Reviews Authorization
Chapter 53: YelpCamp: Controllers & Star Ratings
550. Refactoring To Campgrounds Controller
551. Adding a Reviews Controller
552. A Fancy Way To Restructure Routes
553. Displaying Star Ratings
554. Star Rating Form
Chapter 54: YelpCamp: Image Upload
555. Intro To Image Upload Process
556. The Multer Middleware
557. Cloudinary Registration
558. Environment Variables with dotenv
559. IMPORTANT NOTE: Fixing npm install Issues In The Next
Lecture
560. Uploading To Cloudinary Basics
561. Storing Uploaded Image Links In Mongo
562. Displaying Images In A Carousel
563. Fixing Our Seeds
564. Adding Upload to Edit Page
565. Customizing File Input
566. A Word Of Warning!
567. Deleting Images Form
568. Deleting Images Backend
569. Adding a Thumbnail Virtual Property
Chapter 55: YelpCamp: Adding Maps
570. YelpCamp Maps: MapTiler Cloud (Replacement for Mapbox)
571. Registering For Mapbox
572. Geocoding Our Locations
573. Working With GeoJSON
574. Displaying A Map
575. Centering The Map On A Campground
576. Fixing Our Seeds Bug
577. Customizing Map Popup
Chapter 56: YelpCamp: Fancy Cluster Map
578. Intro To Our Cluster Map
579. Adding Earthquake Cluster Map
580. Reseeding Our Database (again)
581. Basic Clustering Campgrounds
582. Tweaking Clustering Code
583. Changing Cluster Size and Color
584. Adding Custom Popups
Chapter 57: YelpCamp: Styles Clean Up
585. Styling Home Page
586. Additional Home Page Styling
587. Styling Login Form
588. Styling Register Form
589. Spacing Campgrounds
590. Removing Inline Map Styles
591. Adding Map Controls
Chapter 58: YelpCamp: Common Security Issues
592. IMPORTANT NOTE: About The express-mongo-sanitize
Package
593. Mongo Injection
594. Cross Site Scripting (XSS)
595. Sanitizing HTML w/ JOI
596. Minor Changes to Session/Cookies
597. Hiding Errors
598. Using Helmet
599. NOTE! If you switched from Mapbox to MapTiler Cloud for
maps in YelpCamp
600. Content Security Policy Fun
Chapter 59: YelpCamp: Deploying
601. Setting Up Mongo Atlas
602. ??IMPORTANT: connect-mongo ? Handling Updates??
603. Using Mongo For Our Session Store
604. ??IMPORTANT! Free Alternatives for Deploying Your App -
Vercel & Render??
605. Heroku Setup
606. IMPORTANT NOTE: Initializing YelpCamp's Git Repository
607. Pushing to Heroku
608. Fixing Heroku Errors
609. Configuring Heroku Env Variables
Chapter 60: Introducing React
610. How The React Content Works
611. React Content Slides
612. Introducing React
613. Setting Up Code Sand Box
614. The Basics of JSX
615. Basic React App Structure
616. Our First React Component
Chapter 61: JSX In Detail
617. Importing and Exporting Components
618. The Rules of JSX
619. React Fragments
620. Evaluating JS Expressions in JSX
621. Creating. a Die Component
622. Component Decomposition
623. Styling Components
624. Random PokeCard Exercise
625. GET THE POKEMON IMAGE URL HERE
Chapter 62: Local React Apps With Vite
626. Creating React Apps With Vite
627. A Note About Create React App
628. A Tour of A Vite App
Chapter 63: Working With Props
629. Introducing Props
630. Non-String Props
631. Setting Default Prop Values
632. Passing Arrays and Objects
633. React Conditionals
634. The React Developer Tools
635. Adding Dynamic Component Styles
636. Rendering Arrays With Map
637. Slot Machine Exercise
Chapter 64: Shopping List Demo: keys, prop types, and more!
638. Creating A Shopping List Component
639. The Key Prop
640. The Shopping List Item Component
641. Rental Property Exercise
642. Rental Properties Exercise STARTER DATA
643. Configuring ESLint
644. PropTypes Library Crash Course
Chapter 65: React Events
645. Intro to React Events
646. Non-Click Events
647. Working With The Event Object
648. Clicker Exercise
Chapter 66: The Basics of React State
649. Introducing State
650. Working With The useState() Hook
651. Creating a Toggler Component
652. Multiple Pieces of State In A Component
653. useState() and Rendering
654. Color Box Exercise INTRO
655. Color Box Exercise SOLUTION
Chapter 67: Intermediate State Concepts
656. Setting State With An Updater Function
657. State Initializer Functions
658. When Does React Re-Render?
659. Working With Objects In State
660. Arrays In State
661. Generating Ids with UUID
662. Deleting From Arrays The React Way
663. Common Array Updating Patterns
664. Updating All Elements In An Array
665. Score Keeper Exercise
Chapter 68: Component Design
666. Introducing The Lucky7 Game
667. Formulating Our Component Gameplan
668. Building Die and Dice Components
669. The LuckyN Component
670. State As Props
671. Passing Functions As Props
672. Passing Functions That Update State
673. Practice Passing State Updating Functions
Chapter 69: React Forms
674. Controlled Components
675. The htmlFor Property
676. Working With Multiple Inputs
677. A Better Signup Form
678. Computed Property Names in HandleChange()
679. Creating a Shopping List Form
680. Shopping List Component
681. Finishing The Shopping List Component
682. Form Validation From Scratch
683. Validations using React Hook Form
Chapter 70: Effects
684. Introducing Effects
685. The useEffect Hook
686. useEffect Dependencies
687. Fetching Initial Data From an API
688. Adding a Loader
689. Github Profile Search
Chapter 71: Material UI
690. Introducing Material UI
691. Installing Material UI
692. The Rating Component
693. Material Forms
694. The SX Prop and Custom Styles
Chapter 72: Building a Todo List With Material UI & Local
Storage
695. Creating The Application
696. The TodoList Component
697. Removing Todos
698. Toggling Todos
699. The New Todo Form
700. Adding LocalStorage
701. Tweaking the Todo Icons and Ids
702. Final Styles
Chapter 73: BONUS: Fancy, More Advanced Todolist
703. Check Out This Fancy Todo List
Chapter 74: The End :(
704. What's Next and Goodbye!
DATES
Published : 2015-11-02
Last Updated : 2026-01-27
If you fear the truth, don?t come to my well.
Files
| Path | Size |
|---|---|
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.nfo | 33,63 KB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r00 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r01 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r02 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r03 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r04 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r05 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r06 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r07 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r08 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r09 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r10 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r11 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r12 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r13 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r14 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r15 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r16 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r17 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r18 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r19 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r20 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r21 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r22 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r23 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r24 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r25 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r26 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r27 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r28 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r29 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r30 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r31 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r32 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r33 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r34 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r35 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r36 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r37 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r38 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r39 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r40 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r41 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r42 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r43 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r44 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r45 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r46 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r47 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r48 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r49 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r50 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r51 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r52 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r53 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r54 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r55 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r56 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r57 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r58 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r59 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r60 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r61 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r62 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r63 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r64 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r65 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r66 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r67 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r68 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r69 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r70 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r71 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r72 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r73 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r74 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r75 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r76 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r77 | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.r78 | 369,61 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.rar | 572,20 MB |
| udemy.the.web.developer.bootcamp.2026.bookware-mimir.sfv | 5,23 KB |