Track Your Progress

Create a free account to mark chapters complete and track your learning streak.

Sign Up Free → Log In
← All Courses

JavaScript Mastery

intermediate free

From syntax to async patterns, the DOM, ES6+ classes, closures, Promises, fetch API, error handling, and production-grade best practices.

Course Materials
Guided Tasks

Step-by-step coding challenges with AI-powered feedback. Build real things, prompt by prompt.

Variables, Data Types and Operators
Declare variables with const and let, explore the six data types, and write expressions using arithmetic and comparison operators.
JS Beginner 2 steps
▶ Start Task
Control Flow: if/else, switch and Loops
Make decisions with if/else, branch with switch, and repeat logic with for and while loops.
JS Beginner 2 steps
▶ Start Task
Functions: Declarations, Expressions and Arrow Functions
Write reusable code blocks with function declarations, function expressions, and the modern arrow function syntax.
JS Beginner 2 steps
▶ Start Task
Arrays: Store, Loop and Transform Lists
Create arrays, access elements by index, and use push, pop, map, filter and reduce to work with lists.
JS Beginner 2 steps
▶ Start Task
Objects: Properties, Methods and Destructuring
Build structured data with objects, add methods, access nested values, and use destructuring to unpack properties cleanly.
JS Beginner 2 steps
▶ Start Task
Strings and Template Literals
Master template literals, string methods like slice, includes, split, and build dynamic text for real UI output.
JS Beginner 1 steps
▶ Start Task
DOM Manipulation: Select, Change and Create Elements
Use querySelector, innerHTML, classList, and createElement to make a page respond to data dynamically.
JS Intermediate 2 steps
▶ Start Task
Events: Clicks, Keyboard Input and Event Delegation
Attach event listeners, read the event object, handle form input, and use delegation for dynamic elements.
JS Intermediate 2 steps
▶ Start Task
Build an Interactive To-Do List
Combine DOM, events, and arrays to build a fully functional to-do list with add, complete, and delete.
JS Intermediate 1 steps
▶ Start Task
Closures, Scope and the Module Pattern
Understand function scope, closures, and how to use them to create private state and the module pattern.
JS Intermediate 1 steps
🔒 Upgrade to Unlock
Array Pipeline: map, filter, reduce and sort
Chain map, filter, reduce and sort to process real datasets without a single for loop.
JS Intermediate 1 steps
▶ Start Task
Error Handling: try/catch, Custom Errors and Validation
Write defensive code with try/catch/finally, throw custom errors, and validate user input safely.
JS Intermediate 1 steps
🔒 Upgrade to Unlock
Async JavaScript: Callbacks, Promises and Async/Await
Understand the three stages of async JS and convert callback hell to clean async/await code.
JS Advanced 1 steps
🔒 Upgrade to Unlock
Fetch API: Load Real Data from a Public API
Use fetch with async/await to call a real public API, handle errors, and render the response to the DOM.
JS Advanced 1 steps
🔒 Upgrade to Unlock
Classes and Prototypes: Object-Oriented JavaScript
Build class hierarchies with extends, use super, add getters/setters, and understand prototype inheritance.
JS Advanced 1 steps
🔒 Upgrade to Unlock
JavaScript Modules: import, export and Code Splitting
Organise code with ES module syntax, default vs named exports, and understand why modules matter.
JS Advanced 1 steps
🔒 Upgrade to Unlock
Capstone: Build a Live Search and Filter UI
Apply DOM, events, fetch, array methods, and debounce to build a live search component from scratch.
JS Advanced 1 steps
🔒 Upgrade to Unlock
Clean Code and Best Practices
Apply clean code principles: meaningful names, pure functions, early return, and the DRY principle.
JS Advanced 1 steps
🔒 Upgrade to Unlock
How to use this course
  1. Open the Reference Course in a new tab — study each chapter carefully
  2. Open the Projects & Exercises — complete the exercise for each chapter you finish
  3. Use the Playground to practice and test your code live
  4. Tick off chapters above as you complete them — your progress is saved automatically
  5. Once all chapters are done, build the capstone project and submit your GitHub link below
🏗️ Capstone Project
🔒

Sign up to submit your project

Create a free account to track your progress, mark chapters complete, and submit your capstone project for review.

Create Free Account →