Skip to content
Modern JavaScript Tutorial
Branch: master
Clone or download
Latest commit 3b14ed8 Apr 22, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
1-js minor Apr 22, 2019
10-misc components Apr 2, 2019
3-frames-and-windows popup Apr 17, 2019
4-binary Sketch editor update (no important image changes) Apr 5, 2019
5-network fixes Apr 22, 2019
8-web-components Merge pull request #929 from mihansweatpants/patch-2 Apr 21, 2019
9-regular-expressions minor Apr 20, 2019
script renovations Feb 21, 2015
.gitattributes Create .gitattributes Oct 2, 2018
.gitignore minor Mar 15, 2015 translate Apr 14, 2019 Update Sep 17, 2017 fixes Apr 22, 2019 Update Apr 16, 2019
figures.sketch minor Apr 10, 2019

The Modern JavaScript Tutorial

This repository hosts the English content of the Modern JavaScript Tutorial, published at


We'd like to make the tutorial available in many languages. Please help us to translate.

See for the details.


We'd also like to collaborate on the tutorial with other people.

Something's wrong? A topic is missing? Explain it to people, add as PR 👏

You can edit the text in any editor. The tutorial uses enhanced "markdown" format, easy to grasp. And if you want to see how it looks on-site, there's a server to run the tutorial locally at

The list of contributors is available at


Every chapter, article or a task has its folder.

The folder is named like N-url, where N is a number for the sorting purposes and url is the URL part with title of the material.

The type of the material is defined by the file inside the folder:

  • stands for a chapter
  • stands for an article
  • stands for a task (solution must be provided in file aswell)

Each of these files starts from the # Main header.

It's very easy to add something new.

Ilya Kantor @iliakan

You can’t perform that action at this time.