Server for the Modern Javascript Tutorial
JavaScript CSS HTML Other
Switch branches/tags
Nothing to show
Clone or download
Latest commit 7b168ac Aug 7, 2018
Failed to load latest commit information.
assets WIP Aug 4, 2018
bin WIP Jun 27, 2018
cache cleanup Jun 29, 2018
handlers WIP Aug 4, 2018
locales WIP Aug 4, 2018
modules minor Aug 7, 2018
styles/blocks build Jul 1, 2018
tasks build Jul 1, 2018
templates refactor config domains -> urlBase, urlBaseProduction Jul 28, 2018
tmp up Jun 14, 2018
.gitattributes up Jun 23, 2018
.gitignore cleanup Jun 29, 2018 init Aug 19, 2016 minor Jul 20, 2018
dev refactor config domains -> urlBase, urlBaseProduction Jul 28, 2018
dev.cmd refactor config domains -> urlBase, urlBaseProduction Jul 28, 2018
edit refactor config domains -> urlBase, urlBaseProduction Jul 28, 2018
edit.cmd refactor config domains -> urlBase, urlBaseProduction Jul 28, 2018
gulpfile.js build improvements Jul 3, 2018 WIP Jun 26, 2018
package.json WIP Aug 4, 2018

Tutorial server

Hi everyone!

This is a standalone server for the javascript tutorial

You can use it to run the tutorial locally and translate it into your language.


(If you have an old copy of the English tutorial, please rename 1-js/05-data-types/09-destructuring-assignment/1-destructuring-assignment to 1-js/05-data-types/09-destructuring-assignment/1-destruct-user).

  1. Install Git and Node.JS.

    These are required to update and run the project. For Windows just download and install, otherwise use standard OS install tools (packages or whatever convenient).

    (Maybe later, optional) If you're going to change images, please install GraphicsMagick.

  2. Install global Node modules:

    npm install -g bunyan gulp
  3. Create the root folder.

    Create a folder /js for the project. You can use any other directory as well, just adjust the paths below.

  4. Clone the tutorial server into it:

    cd /js
    git clone
  5. Clone the tutorial text into it.

    The text repository has "-language" postfix at the end, e.g for the French version fr, for Russian – ru etc.

    For the Russian version:

    cd /js
    git clone
  6. Run the site

    Run the site with the same language:

    cd /js/javascript-tutorial-server
    ./edit ru

    Please note that the argument of edit is exactly the language you cloned at step 5.

    Wait a bit while it reads the tutorial from disk and builds static assets.

    Then access the site at

  7. Edit the tutorial

    As you edit text files in the tutorial text repository (cloned at step 5), the webpage gets reloaded automatically.

Dev mode

If you'd like to edit the server code, not the tutorial text (assuming you're familiar with Node.js), run this once:

// import and cache the "ru" version of the tutorial from /js/javascript-tutorial-ru
// (can be any language)
cd /js/javascript-tutorial-server
NODE_LANG=ru npm run gulp tutorial:import

And then:

cd /js/javascript-tutorial-server
./dev ru

Running ./dev uses the cached version of the tutorial, it does not watch tutorial text. But it reloads the server after code changes. Again, that's for developing the server code itself, not writing the tutorial.


If something doesn't work – file an issue.

Please mention OS and Node.js version.

Ilya Kantor