JavaScript Complete Foundation
The only language that runs in every browser. Learn it properly, including the parts that confuse everyone.
JavaScript has a reputation for being confusing, and some of that is deserved. Asynchronous behaviour, `this`, and closures trip up people who have already been writing it for a year.
This course confronts those directly rather than hoping you pick them up. You will understand why an API call returns undefined, why `this` changed, and what actually happens when the browser runs your script.
Everything is plain JavaScript. No framework. Learn React on top of shaky JavaScript and you will spend years confused about which one is misbehaving.
Who this is for
- Beginners starting web development
- Anyone who has copied JavaScript that works but does not know why
- Students preparing for React or Node
What you need first
- A computer and a modern browser
- The Web UI Development Foundation course helps but is not required
Tools you will use
By the end you can
- Write modern JavaScript with let, const, arrow functions and modules
- Manipulate the DOM and handle events confidently
- Explain closures, scope and `this` rather than avoiding them
- Use promises and async/await without guessing
- Fetch data from an API and render it
- Write classes, throw and catch errors, and validate input with regular expressions
- Format money, numbers and dates correctly for an Indian audience
- Debug JavaScript in browser devtools
- Build and deploy a complete browser application with no framework
Stuck? Compare your work
The tiffin order tracker as the capstone builds it. Only module 10 has a checkpoint — the rest of the course is concepts, and publishing disconnected snippets invites copying exactly what the lesson asks you to type.
It is there for when you are stuck, not to start from. Type the code yourself first — copying it will teach you very little.
12 modules, 58 lessons
Work through these in order. Each lesson is short enough to finish in one sitting and ends with something to build, not a quiz.
- 1
Getting Started
Where JavaScript runs and how to experiment with it.
- 2
Language Basics
Values, types and the quirks worth knowing early.
- 3
Functions, Scope and Closures
The conceptual core of JavaScript. Get this right and everything else follows.
- 4
Objects and Arrays
How data is shaped in JavaScript, and the methods you will use daily.
- 5
Classes and Errors
Building your own types, and failing on purpose instead of by accident.
- 6
Text, Numbers and Dates
The data a real form actually contains — validated, counted and formatted correctly.
- 7
The DOM
Making a page respond to a user.
- 8
Asynchronous JavaScript
The part everyone finds hard, taken slowly.
- 9
Modules and Tooling
Splitting code up and using the wider ecosystem.
- 10
Design Patterns in JavaScript
The handful worth knowing in a language where closures and first-class functions make half of them disappear into one line.
- What a design pattern really is25 min
- The module pattern, and what closures replaced30 min
- Factories, and why JavaScript rarely needs a builder30 min
- Strategy, when a function is already the pattern30 min
- Observer, and the event system you already use30 min
- Patterns in the browser, and when not to use one25 min
- 11
Best Practices: Code Others Can Read
Naming, size, comments and review. The difference between somebody who can make it work and somebody worth hiring.
- 12
Capstone: a tiffin service order tracker
This course's own project, built from nothing to deployed, using everything it covered.
Learning this with a mentor is faster
Going through a course like this one is how you qualify for our six-month internship, for selected students, mostly from Pune. Clear the interview and you build real-world projects with my mentorship.