The Web Developer Bootcamp 2026
-
Course OrientationWelcome To The Course!0sJoining The Community Chat & GroupsCurriculum Walkthrough0sWhen Was The Course Last Updated?0sCourse Change LogWill I Get A Job?0sAccessing Course Code & Slides0sTips On The Interactive Coding Exercises0sCourse Coding Exercise SolutionsMigrating From The Old Version Of This Course0s
-
An Introduction to Web Development
-
HTML: The EssentialsWhat Matters In This Section0sIntroduction to HTML0sOur Very First HTML Page0sTIP: Mozilla Developer Network0sParagraph Elements0sHeading Elements0sPangolin PracticeIntroduction to the Chrome Inspector0sHTML Boilerplate0sVSCode Tip: Auto-format0sList Elements0sFavorite Movies ExercisesAnchor Tags0sImages0sComments0sWolf Images & Links Exercise
-
HTML: Next Steps & SemanticsWhat Matters In This Section0sWhat Exactly Is HTML5?0sBlock vs. Inline Elements – Divs and Spans0sAn Odd Assortment of Elements: HR, BR, Sup, & Sub0sEntity Codes0sSnowman Logo ExerciseIntro to Semantic Markup0sPlaying With Semantic Elements0sScreen Reader Demonstration0sVSCode Tip: Emmet0s
-
HTML: Forms & TablesWhat Matters In This Section0sUnit Goals0sIntroducing HTML Tables0sTables: TR, TD, and TH Elements0sTables: Thead, Tbody, and Tfoot Elements0sTables: Colspan & Rowspan0sTable Practice ExerciseThe Form Element0sCommon Input Types0sThe All-Important Label0sHTML Buttons0sThe Name Attribute0s“Hijacking” Google & Reddit’s Search0sRadio Buttons, Checkboxes, & Selects0sRange & Text Area0sForms Practice ExerciseHTML5 Form Validations0sCreating A Marathon Registration Form Intro0sCreating A Marathon Registration Form Solution0s
-
CSS: The Very BasicsWhat Matters In This Section0sWhat is CSS?0sCSS is Huge, Don’t Panic!0sIncluding Styles Correctly0sColor & Background-Color Properties0sOur First CSS ExerciseColors Systems: RGB & Named Colors0sColors Systems: Hexadecimal0sColors QuizA Reminder On Semicolons & CSS0sCommon Text Properties0sFont Size Basics With Pixels0sThe Font Family Property0sHipster Logo Exercise
-
The World of CSS SelectorsWhat Matters In This Section0sUniversal & Element Selectors0sThe ID Selector0sThe Class Selector0sBasic Selectors PracticeThe Descendant Selector0sDescendant Combinator PracticeThe Adjacent & Direct-Descendant Selectors0sThe Attribute Selector0sPseudo Classes0sCheckerboard ExercisePseudo Elements0sThe CSS Cascade0sWTF is Specificity0sSpecificity QuizTIP: Chrome Dev Tools & CSS0sInline Styles & Important0sCSS Inheritance0s
-
The CSS Box Model
-
Other Assorted Useful CSS PropertiesWhat Matters In This Section0sOpacity & The Alpha Channel0sThe Position Property0sCSS Transitions (yay!)0sThe Power of CSS Transforms0sFancy Button Hover Effect CodeAlong0sThe Truth About Background0sGoogle Fonts is Amazing0sIMPORTANT REMINDER: How To Find And Download Course CodePhoto Blog CodeAlong Pt. 10sPhoto Blog CodeAlong Pt. 20s
-
Responsive CSS & FlexboxWhat Matters In This Section0sWhat on Earth Is Flexbox?0sFlex-Direction0sJustify-Content0sFlex-Wrap0sAlign-Items0sAlign-Content & Align-Self0sFlex-Basis, Grow, & Shrink0sFlex Shorthand0sResponsive Design & Media Queries Intro0sThe Power of Media Queries0sNOTE: Fixing The Code Order In The Next LectureBuilding a Responsive Nav0s
-
Pricing Panel Project
-
CSS Frameworks: BootstrapWhat Matters In This Section0sWTF Is Bootstrap0sIncluding Bootstrap & Containers0sBootstrap Buttons0sBootstrap Typography & Utilities0sBadges, Alerts, & Button Groups0sBootstrap Basics PracticeIntro to the Bootstrap Grid0sBootstrap Grid PracticeResponsive Bootstrap Grids0sUseful Grid Utilities0sBootstrap & Forms0sBootstrap Navbars0sBootstrap Icons!0sOther Bootstrap Utilities0sA Mixed Bag of Other Bootstrap Stuff0s
-
OPTIONAL Museum Of Candy Project
-
JavaScript Basics!What Matters In This Section0sWhy JavaScript is Awesome0sPrimitives & The Console0sJavaScript Numbers0sWTF is NaN0sQuick Numbers Quiz0sVariables & Let0sOur First Variables ExerciseUpdating Variables0sIncrement Operator Explanation: i++ vs ++i0sConst & Var0sOur First Constants ExerciseVariables QuizBooleans0sVariable Naming and Conventions0sQuick Variable Quiz
-
JavaScript Strings and MoreWhat Matters In This Section0sIntroducing Strings0sOur First String Variables PracticeIndices & Length0sStrings Basics QuizString Methods0sString Methods PracticeString Methods With Arguments0sMore String Methods PracticeString Template Literals -SUPER USEFUL0sUndefined & Null0sRandom Numbers & The Math Object0sString Template Literal Exercise
-
JavaScript Decision MakingWhat Matters In This Section0sDecision Making With Code??0sComparison Operators0sEquality: Triple Vs. Double Equals0sComparison Quiz!Console, Alert, & Prompt0sRunning JavaScript From A Script!0sIf Statements0sOur First Conditional ExerciseElse-If0sElse0sgetColor Conditional ExerciseNesting Conditionals0sNested Conditionals PracticeTruth-y & False-y Values0sLogical AND0sLogical AND Mystery ExerciseLogical OR0sLogical NOT0sThe Switch Statement Is…A Lot0s
-
JavaScript ArraysWhat Matters In This Section0sIntroducing Arrays0sLotto Numbers ExerciseArray Random Access0sArray Access ExercisePush & Pop0sShift & Unshift0sPush/Pop/Shift/Unshift PracticeConcat, indexOf, includes & reverse0sSlice & Splice0sReference Types & Equality Testing0sArrays + Const0sMulti-Dimensional Arrays0sNested Arrays Exercise
-
JavaScript Object Literals
-
Repeating Stuff With LoopsWhat Matters In This Section0sIntro to For Loops0sOur First For Loop PracticeMore For Loops Examples0sMore For Loops PracticeThe Perils Of Infinite Loops :(0sLooping Over Arrays0sIterating Arrays ExerciseNested Loops0sAnother Loop: The While Loop0sThe Break Keyword0sWriting a Guessing Game0sGuessing Game Explanation And Bug Fixes0sThe Lovely For…Of Loop0sFor…Of PracticeIterating Over Objects0sTodo List Project Intro0sTodo List Project CodeAlong0s
-
NEW: Introducing FunctionsWhat Matters In This Section0sIntro to Functions0sOur Very First Function0sHeart Function ExerciseArguments Intro0sRant ExerciseFunctions With Multiple Arguments0sMultiple Args ExerciseThe Return Keyword0sReturn Value PracticeisShortsWeather FunctionLast Element ExerciseCapitalize ExerciseSum Array ExerciseDays Of The Week Exercise
-
Leveling Up Our FunctionsWhat Matters In This Section0sFunction Scope0sFunction Scope QuizBlock Scope0sLexical Scope0sFunction Expressions0sFunction Expression ExerciseHigher Order Functions0sReturning Functions0sDefining Methods0sMethods ExerciseThe Mysterious Keyword ‘this’0sEgg Laying ExerciseUsing Try/Catch0s
-
Callbacks & Array MethodsWhat Matters In This Section0sWhat Is This Section Even About?!0sThe forEach Method0sThe map Method0sMap PracticeIntro to Arrow Functions0sArrow Function ExerciseArrow Function Implicit Returns0sArrow Functions Wrapup0ssetTimeout and setInterval0sThe filter Method0sFilter ExerciseSome & Every Methods0sSome/Every ExerciseThe Notorious Reduce Method0sArrow Functions & ‘this’0s
-
Newer JavaScript Features
-
Introducing The World Of The DOMWhat Matters In This Section0sIntroducing the DOM0sThe Document Object0sgetElementById0sgetElementById PracticegetElementsByTagName & className0squerySelector & querySelectorAll0squerySelector PracticeinnerHTML, textContent, & innerText0sPickles ExerciseAttributes0sManipulating Attributes PracticeChanging Styles0sMagical Forest Circle ExerciseRainbow Text ExerciseClassList0sClassList PracticeTraversing Parent/Child/Sibling0sAppend & AppendChild0s100 Button Insanity ExerciseremoveChild & remove0sPokemon Sprites Demo0s
-
The Missing Piece: DOM EventsWhat Matters In This Section0sIntro to Events0sInline Events0sKnow Thy Enemy ExerciseThe Onclick Property0saddEventListener0sClick Events ExerciseRandom Color Exercise0sEvents & The Keyword This0sKeyboard Events & Event Objects0sNEW VERSION: Form Events & PreventDefault0sNEW VERSION: Practice With Form Events & PreventDefault0sORIGINAL VERSION: Form Events & PreventDefault0sForm Events ExerciseInput & Change Events0sInput Event PracticeEvent Bubbling0sEvent Delegation0s
-
Score Keeper CodeAlong
-
Async JavaScript: Oh Boy!What Matters In This Section0sThe Call Stack0sWebAPIs & Single Threaded0sCallback Hell :(0sDemo: fakeRequest Using Callbacks0sDemo: fakeRequest Using Promises0sThe Magic Of Promises0sCreating Our Own Promises0sThe Async Keyword0sThe Await Keyword0sHandling Errors In Async Functions0s
-
AJAX and API’sWhat Matters In This Section0sIntro to AJAX0sIntro to APIs0sWhat is JSON0sUsing Hoppscotch (or Postman)0sHTTP Verbs0sHTTP Status Codes0sUnderstanding Query Strings0sHTTP Headers0sMaking XHRs0sUsing The Fetch API0sIntroducing Axios0sSetting Headers With Axios0sTV Show Search App0s
-
Prototypes, Classes, & OOP
-
Mastering The TerminalWhat Matters In This Section0sBackend Overview0sA Pep Talk On Terminal0sWhy Do We Need To Know Terminal Commands?0sIMPORTANT: Windows Terminal Installation Instructions – Git BashThe Basics: LS & PWD0sChanging Directories0sRelative Vs. Absolute Paths0sMaking Directories0sMan Pages & Flags0sThe Touch Command0sRemoving Files & Folders0s
-
Our First Brush With Node
-
Exploring Modules & The NPM UniverseWhat Matters In This Section0sWorking With module.exports0sRequiring A Directory0sIntroducing NPM0sInstalling Packages – Jokes & Rainbow0sAdding Global Packages0sThe All-Important Package.json0sInstalling All Dependencies For A Project0sIMPORTANT NOTE: Fixing Issues — Language Guesser ChallengeLanguage Guesser Challenge0s
-
Creating Servers With Express
-
Creating Dynamic HTML With TemplatingWhat Matters In This Section0sWhat is Templating?0sConfiguring Express For EJS0sSetting The Views Directory0sEJS Interpolation Syntax0sPassing Data To Templates0sSubreddit Template Demo0sConditionals in EJS0sLoops In EJS0sA More Complex Subreddit Demo0sServing Static Assets In Express0sBootstrap + Express0sEJS & Partials0s
-
Defining RESTful RoutesWhat Matters In This Section0sGet Vs. Post Requests0sDefining Express Post Routes0sParsing The Request Body0sIntro to REST0sRESTful Comments Overview0sRESTful Comments Index0sRESTful Comments New0sExpress Redirects0sRESTful Comments Show0sThe UUID Package0sRESTful Comments Update0sExpress Method Override0sRESTful Comments Delete0s
-
Our First Database: MongoDBWhat Matters In This Section0sIntroduction to Databases0sSQL Vs. NoSQL Databases0sWhy We’re Learning Mongo0sInstalling Mongo: MacOS0sInstalling Mongo: WindowsIMPORTANT NOTE: About The Mongo ShellThe Mongo Shell0sWhat On Earth Is BSON?0sInserting With Mongo0sFinding With Mongo0sUpdating With Mongo0sDeleting With Mongo0sAdditional Mongo Operators0s
-
Connecting To Mongo With MongooseWhat Matters In This Section0sWhat is Mongoose0sA note about solving mongoose connection issuesConnecting Mongoose to Mongo0sA note about the node .load index.js command issueOur First Mongoose Model0sInsert Many0sFinding With Mongoose0sUpdating With Mongoose0sDeleting With Mongoose!0sMongoose Schema Validations0sAdditional Schema Constraints0sValidating Mongoose Updates0sMongoose Validation Errors0sModel Instance Methods0sAdding Model Static Methods0sMongoose Virtuals0sDefining Mongoose Middleware0s
-
Putting It All Together: Mongoose With Express
-
YelpCamp: Campgrounds CRUD
-
Middleware: The Key To Express
-
YelpCamp: Adding Basic Styles
-
Handling Errors In Express Apps
-
YelpCamp: Errors & Validating Data
-
Data Relationships With Mongo
-
Mongo Relationships With Express
-
YelpCamp: Adding The Reviews Model
-
Express Router & Cookies
-
Express Session & Flash
-
YelpCamp: Restructuring & Flash
-
Authentication From “Scratch”What Matters In This Section0sAuthentication Vs. Authorization0sHow to (not) Store Passwords0sCryptographic Hashing Functions0sPassword Salts0sIntro to Bcrypt0sAuth Demo: Setup0sAuth Demo: Registering0sAuth Demo: Login0sAuth Demo: Staying Logged In With Session0sAuth Demo: Logout0sAuth Demo: Require Login Middleware0sAuth Demo: Refactoring To Model Methods0s
-
YelpCamp: Adding In AuthenticationIntroduction to Passport0sCreating Our User Model0sConfiguring Passport0sRegister Form0sRegister Route Logic0sLogin Routes0sisLoggedIn Middleware0sIMPORTANT: Fixing LogoutAdding Logout0scurrentUser Helper0sFixing Register Route0sIMPORTANT: Passport.js Updates — Fixing The returnTo/Redirect IssueReturnTo Behavior0s
-
YelpCamp: Basic Authorization
-
YelpCamp: Controllers & Star Ratings
-
YelpCamp: Image UploadIntro To Image Upload Process0sThe Multer Middleware0sCloudinary Registration0sEnvironment Variables with dotenv0sIMPORTANT NOTE: Fixing npm install Issues In The Next LectureUploading To Cloudinary Basics0sStoring Uploaded Image Links In Mongo0sDisplaying Images In A Carousel0sFixing Our Seeds0sAdding Upload to Edit Page0sCustomizing File Input0sA Word Of Warning!0sDeleting Images Form0sDeleting Images Backend0sAdding a Thumbnail Virtual Property0s
-
YelpCamp: Adding Maps
-
YelpCamp: Fancy Cluster Map
-
YelpCamp: Styles Clean Up
-
YelpCamp: Common Security Issues
-
YelpCamp: Deploying
-
Introducing React
-
JSX In Detail
-
Local React Apps With Vite
-
Working With Props
-
Shopping List Demo: keys, prop types, and more!
-
React Events
-
The Basics of React State
-
Intermediate State ConceptsSetting State With An Updater Function0sState Initializer Functions0sWhen Does React Re-Render?0sWorking With Objects In State0sArrays In State0sGenerating Ids with UUID0sDeleting From Arrays The React Way0sCommon Array Updating Patterns0sUpdating All Elements In An Array0sScore Keeper Exercise0s
-
Component Design
-
React FormsControlled Components0sThe htmlFor Property0sWorking With Multiple Inputs0sA Better Signup Form0sComputed Property Names in HandleChange()0sCreating a Shopping List Form0sShopping List Component0sFinishing The Shopping List Component0sForm Validation From Scratch0sValidations using React Hook Form0s
-
Effects
-
Material UI
-
Building a Todo List With Material UI & Local Storage
-
BONUS: Fancy, More Advanced Todolist
-
The End :(
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!
What's included
- 73.5 hours on-demand video
- 38 articles
- 94 downloadable resources
- Access on mobile and TV
- Certificate of completion