/nodejs-course

Materials, slides and other goodies from my Node.JS courses

Primary LanguageJavaScript

Yoni Goldberg - Node.JS Course

Node.js Best Practices


150+ Students Last update: February 15, 2018 Updated for Node v.8.9

Welcome To My Node.JS Course!

This repository holds various materials, demos and instructions for my Node.JS course

Preparation

As we meet in the classroom we wish to spend our precious time on interesting development challenges rather than machine setup. Make sure to prepare your machine aforehand. Should you encounter any issue - please open an issue within this repo and I'll be sure to assist shortly

✔ 1 Install Node.JS v8.9.x

Install Node.JS LTS (any 8.9.X version) from this website - just download and progress within the installation wizard

✔ 2 Ensure Node is installed correctly

Open your favourite terminal (Windows: command prompt) and type 'NPM verson'. The output should confirm that version 8.9.x is indeed installed

✔ 3 Install IDE (editor)

I highly recommend using VSCode editor in the course as it's lightweight and has a very rich plugins eco-sysem that we might use during our excercise. Simply visit the downloads site and choose the edition that suits your operations system. You may opt for any other editor that supports Node debugging and intellisense

✔ 4 Install The following NPM packages

Most of our excercises rely on few popular backbone packages that we can install aforehand. Open your terminal (Windows: command prompt) and paste the following command:

npm install -g express mocha nyc nodemon faker eslint eslint-plugin-node passport jsonschema jsonwebtoken knex socket.io

✔ 5 Install POSTMAN

Some of our excercises require to perform web requests, POSTMAN is a popular client tool for running HTTP requests. Download page

✔ 6 Polish Your JS Skills

Learning Node requires to be familiar with Javascript. Beside mastering the basic principals of JS, it's recommended to get acquaintance with the following concepts that are highly related to Node.JS:
Arrow functions
Spread operator
Callbacks
Classes

✔ 7 Ensure Familiarity with Backend Concepts

It's assumed that all students are familiar with basic web & backend concepts. For example:
Rest API
Cookies
HTTP headers
JSON

Code Examples

All the code examples that we run in the classroom can be found in this Git repository

Slides

Download the slides here: https://github.com/i0natan/nodejs-course/blob/master/node.js%20course%20for%20GitHub.pptx

Note: The slides were meant as complementary material to an onsite course