JavaScript

Level 2 of 3

Intermediate Level

Prerequisites

JavaScript Beginner level, or equivalent: functions, arrays and objects, array methods and DOM events.

Duration

8 weeks · 90 guided hours · 6 modules. Taught live by an instructor — online or in person.

By the end of this level you can

  • Use modern syntax, classes and ES modules to structure code
  • Explain the event loop and write asynchronous code with promises and async/await
  • Fetch data from web APIs and handle loading, empty and error states
  • Store data in the browser and validate forms robustly
  • Debug systematically and keep code consistent with a linter and formatter

Modules

  1. 1Module 1 · 15 h · 3 lessonsModern JavaScript Syntax and Modules
  2. 2Module 2 · 16 h · 3 lessonsAsynchronous JavaScript
  3. 3Module 3 · 16 h · 3 lessonsFetch, APIs and JSON in the Browser
  4. 4Module 4 · 13 h · 3 lessonsBrowser Storage and Robust Forms
  5. 5Module 5 · 13 h · 3 lessonsDebugging and Code Quality in JavaScript
  6. 6Module 6 · 17 h · 3 lessonsIntermediate JavaScript Project

Intermediate level project

Offline-Friendly Exchange Rate and Budget App

A web app that fetches exchange rates from an API, lets users plan a budget in SSP and USD, saves everything in the browser and keeps working with the last known rates when offline.

Deliverables

  • A multi-file ES-module project with no framework
  • API calls with loading, error and offline states
  • Budget entries saved in localStorage and restored on reload
  • ESLint configuration with no remaining errors, and a short README

Assessed on

  • Asynchronous code is correct: no unhandled promise rejections, clear error messages
  • The app works offline with cached rates clearly marked with their date
  • Code is organised into modules with single responsibilities
  • Forms validate input and the app never shows NaN or undefined to users

All levels are taught live by an instructor — online or in person — see registration options.