- 'module bundler'
- Introduction to Build Tools Lesson
- Multiple pages, endpoints
- A relational database
- Websockets
- Hosting complex client side apps
- Check out this React App
Node is a platform for JavaScript applications. Blending the virtual machine that Google Chrome uses (V8) for server-side programming.
The official definition of Node.js is 'a platform built on Chrome's JavaScript runtime for easily building fast, scalable network applications. Node.js uses and event-driven, non-blocking I/O model that makes it lightweight and efficient for data-intensive real-time applications that run across distributed devices'
- Node tries to keep consistency between the browser and the server by reimplementing common host objects, such as:
- Timer API (i.e.
setTimeout
) - Console API (i.e.
console.log
)
- Timer API (i.e.
- Same language on server and client - less cognitive switch
- Server, since based on Chrome, has the newest and most up to date versions of the language
Ajax in the browser:
$.post('/resource.json', function (data){
console.log(data);
});
The filesystem in node:
var fs = require('fs');
fs.readFile('./resource.json', function (er, data){
console.log(data);
})
Both calls require an async response
- Building and Deploying Node to Heroku
- One of the most simple tutorials that covers actually creating and deploying a boilder plate node server