Laroo-Pece Division, Gulu City, Northern Uganda
Uganda time
Web development - Advanced

Modern Web Development: JavaScript, APIs and Deployment

Go from basic scripts to real projects: modern JavaScript, working with APIs, Git and Node.js, quality and security, then publish your site online with free hosting.

About this course

Knowing how to make a button work is the start. Professional web developers also use modern language features, talk to services over the internet, keep their work under version control, check quality and security, and publish their sites so that anyone can visit. This course covers that full journey, using free tools that run on an ordinary laptop.

You will write modern JavaScript with modules, promises and async/await, build a small app that calls a public API, use Git, GitHub, Node.js and npm, make interfaces that are responsive, accessible, fast and safer, and finish by planning and shipping a capstone project of your own.

The course is for learners who have completed JavaScript for Beginners or who are comfortable with HTML, CSS, variables, functions, arrays, objects and the DOM. Expect to type and run a lot of code: the best way to learn is to build.

What you will learn

  • Use ES modules, destructuring, spread, promises, async/await, error handling and classes.
  • Explain HTTP, REST, status codes and CORS, and call an API with fetch.
  • Explain why API keys must never be placed in front-end code.
  • Use Git and GitHub to commit, branch, push and open a pull request.
  • Set up a Node.js project with npm, linting, formatting and environment variables.
  • Build responsive, accessible and fast interfaces and apply basic security habits against XSS.
  • Describe how static hosting, domains and DNS work and publish a site online.
  • Plan, build and maintain a capstone project from idea to launch.

Course content

5 modules · 17 lessons · 5 h 30 min · 6 quizzes

Module 1: Modern JavaScript3 lessons

Use the language features that professional code relies on: modules, destructuring, spread, promises, async/await, error handling and classes.

  1. ES modules, destructuring and spread 18 min
  2. Promises and async/await 20 min
  3. Error handling and classes 18 min
  4. Quiz: 8 questions
Module 2: Working with APIs4 lessons

Understand HTTP and REST, call APIs with fetch, read status codes, handle CORS and keys, and build a small app on a public API.

  1. HTTP and REST in plain words 16 min
  2. Using fetch, JSON and status codes 20 min
  3. CORS, API keys and keeping secrets safe 18 min
  4. Project: a small app on a public API 24 min
  5. Quiz: 8 questions
Module 3: Tooling and workflow4 lessons

Work like a professional: Git and GitHub, Node.js and npm, project structure, linting, formatting and environment variables.

  1. Git basics: commits and branches 20 min
  2. GitHub: pushing, pulling and pull requests 18 min
  3. Node.js, npm and project structure 20 min
  4. Linting, formatting and environment variables 18 min
  5. Quiz: 8 questions
Module 4: Quality: accessible, fast and secure3 lessons

Make interfaces that work for everyone on any device, load quickly on slow connections, resist common attacks and are checked by tests.

  1. Responsive and accessible interfaces 20 min
  2. Performance: fast pages on slow connections 18 min
  3. Security basics and testing ideas 22 min
  4. Quiz: 8 questions
Module 5: Shipping your work3 lessons

Build a project end to end, publish it on free static hosting, understand domains, DNS, analytics and privacy, and finish with a capstone project.

  1. From idea to finished project: a build workflow 20 min
  2. Free static hosting, domains and DNS 18 min
  3. Analytics, privacy, maintenance and your capstone 22 min
  4. Quiz: 8 questions
Final exam

25 questions. Pass with 70% or more to earn your certificate.

What you need

  • The LAF Academy course "JavaScript for Beginners: Make Web Pages Interactive" or equal knowledge (variables, functions, arrays, objects, DOM and events)
  • Comfortable with HTML and CSS
  • A computer where you can install software (Windows, Mac or Linux) and an internet connection

Further reading

To install on iPhone or iPad: tap the Share button in Safari, then choose "Add to Home Screen".