Node.js is an open-source, cross-platform, JavaScript runtime environment that executes JavaScript code outside of a web browser. It is built on top of the V8 JavaScript engine and uses JavaScript on the server-side and is useful for both servers and desktop applications. Node.js uses asynchronous programming which makes it very memory efficient. It can generate dynamic page content, create, open, read, write, delete, and close files on the server, collect form data, and add, delete, modify data in your database.
Node.js files contain tasks that will be executed on certain events. A typical event is someone trying to access a port on the server. Node.js files must be initiated on the server before having any effect.