The Node.js Master Class – No Frameworks, No NPM

Node as it was intended: Build a REST API, a web app GUI, and a CLI in plain javascript with no 3rd-party libraries.

What Will I Learn?
We’ll explore the entirety of the Node docs…
Assertion Testing | require(‘assert’)
Async Hooks | require(‘async_hooks’)
Child Processes | require(‘child_process’)
Cluster | require(‘cluster’)
Crypto | require(‘crypto’)
DNS | require(‘dns’)
Events | require(‘events’)
File System | require(‘fs’)
HTTP | require(‘http’)
HTTPS | require(‘https’)
HTTP/2 | require(‘http2’)
Net | require(‘net’)
OS | require(‘os’)
Path | require(‘path’)
Performance Hooks | require(‘perf_hooks’)
Query Strings | require(‘querystring’)
Readline | require(‘readline’)
REPL | require(‘repl’)
String Decoder | require(‘string_decoder’)
TLS/SSL | require(‘tls’)
UDP / Datagram | require(‘dgram’)
URL | require(‘url’)
Utilities | require(‘util’);
V8 | require(‘v8’)
VM | require(‘vm’)
ZLIB | require(‘zlib’)
…and many more.

Curriculum For This Course:

Expand All 85 Lectures

Course Overview
Course Introduction
Instructor Introduction
Table of Contents

Setting Up Your Workstation
Background Information
6 Lectures
Building a RESTful API
22 Lectures
Building a Web App GUI
15 Lectures
Building a CLI
13 Lectures
Gaining Stability
8 Lectures
Gaining Performance
6 Lectures
Loose Ends
10 Lectures


You should be proficient with Javascript (es5 or es6)
You should be comfortable in your terminal (shell) and have admin (sudo) privileges on your workstation.
Experience in NodeJS is not required but is highly recommended.
You’ll need to download Node version 8.x.x LTS
You’ll need a decent text editor (I recommend Atom or Sublime)
You may want to clone the sample code for the lectures from Github
Welcome to the Node.js Master Class, where you’re going to learn to build applications in raw NodeJS with no frameworks, and no external libraries. And yes, that means no NPM! Together we’re going to build 3 pieces of software from scratch:

A web app GUI
A terminal based CLI (Command-line program)
And you’re going to do all of this with nothing but Node’s standard API. Just a text editor, a terminal, and NodeJS. Nobody else’s code, nobody else’s frameworks, nobody else’s libraries. We won’t be using NPM at all, just Node. Your apps won’t even have a package.json file, because we don’t need any dependency management. After all, your apps won’t have any dependencies to manage.

This course is a master class. It is for developers who want uncommon abilities. Do you want write your own framework? How about author your own useful modules? This course is going to teach you what you need to know to accomplish that. Do you want to be able to fix libraries when they break, and submit pull requests to your favorite projects to make them better and stronger? Then this course is the way forward.

My goal for this course, is to show you how beautiful Node is, and to take your skillset up to the next level. But, be fair warned: this course is not going to be quick, and it certainly isn’t going to be easy. But, it will be worth it. If you’re looking for a challenge, you’ve come to the right place.

Who is the target audience?

Any Javascript developer who wants to learn Node the hard way and isn’t afraid of a challenge.
Any Nodejs developer who is sick of working in frameworks like Express, Hapi, Sails, etc
Any NodeJS developer who wants to learn the whole Node API