Mastering NodeJS

Updated Sep 15, 2022#node#learning-path

Node.js (Node) is an open-source and cross-platform JavaScript runtime environment. It is a popular tool for almost any kind of project! Node runs the V8 JavaScript engine, the core of Google Chrome, outside of the browser. This allows Node to be very performant.

A Node app runs in a single process, without creating a new thread for every request. Node provides a set of asynchronous I/O primitives in its standard library that prevent JavaScript code from blocking and generally, libraries in Node.js are written using non-blocking paradigms, making blocking behavior the exception rather than the norm.

When Node performs an I/O operation, like reading from the network, accessing a database or the filesystem, instead of blocking the thread and wasting CPU cycles waiting, Node will resume the operations when the response comes back.

Node has a unique advantage because millions of frontend developers that write JavaScript for the browser are now able to write the server-side code in addition to the client-side code without the need to learn a completely different language.

Node Ecosystem