Node.js is the platform that, in a very short time, has reached such worldwide success that today it is one of the most interesting platforms for writing web applications and more.
Node.js was born in 2009 from an idea of Ryan Dahl, who was searching for a way to track the time needed to upload a file from a browser without continuously asking the server “how much of the file is uploaded?” His idea was to explore what would happen if the requests were nonblocking, and JavaScript seemed the perfect language for two main reasons: at the time, it didn’t have an I/O library, and the async pattern, which is very useful for writing non-blocking applications, was already present in the language.
Node.js is a cross-platform, open-source server environment that can run on Windows, Linux, Unix, macOS, and more. Node.js is a back-end JavaScript runtime environment, runs on the V8 JavaScript Engine, and executes JavaScript code outside a web browser.
Node.js lets developers use JavaScript to write command line tools and for server-side scripting. The functionality of running scripts server-side produces dynamic web page content before the page is sent to the user’s web browser. Consequently, Node.js represents a “JavaScript everywhere” paradigm, unifying web application development around a single programming language, rather than different languages for server-side and client-side scripts.
Node.js has an event-driven architecture capable of asynchronous I/O. These design choices aim to optimize throughput and scalability in web applications with many input/output operations, as well as for real-time Web applications (e.g., real-time communication programs and browser games).
The Node.js distributed development project was previously governed by the Node.js Foundation and has now merged with the JS Foundation to form the OpenJS Foundation. OpenJS Foundation is facilitated by the Linux Foundation’s Collaborative Projects program.
Corporate users of Node.js software include GoDaddy, Groupon, IBM, LinkedIn, Microsoft, Netflix, PayPal, SAP, Walmart, Yahoo!, and Amazon Web Services.