The Node.js Update - #Week 30 - 27 July, 2018

Below you can find RisingStack's collection of the most important Node.js news, updates & tutorials from this week:


Google Chrome Labs introduces ndb

ndb is an improved debugging experience for Node.js, enabled by Chrome DevTools.

ndb has some powerful features exclusively for Node.js:

  • Child processes are detected and attached to.
  • You can place breakpoints before the modules are required.
  • You can edit your files within the UI. On Ctrl-S/Cmd-S, DevTools will save the changes to disk.
  • By default, ndb blackboxes all scripts outside current working directory to improve focus. This includes node internal libraries (like _stream_wrap.js, async_hooks.js, fs.js) This behaviour may be changed by "Blackbox anything outside working dir" setting.

In addition, you can use all the DevTools functionality that you've used in typical Node debugging:

  • breakpoint debugging, async stacks (AKA long stack traces), async stepping, etc...
  • console (top-level await, object inspection, advanced filtering)
  • eager evaluation in console (requires Node >= 10)
  • JS sampling profiler
  • memory profiler

LinkedIn is offering 6 totally FREE courses covering Node.js development

To celebrate Node Summit, Linkedin unlocked six courses covering Node.js. Watch them all, completely free, between now and Monday, August 20.

node-js-courses-linkein-learning

Node.js development courses from LinkedIn Learning cover Node.js development concepts and best practices.


Deploying a Stateful Node.js Application on Google Cloud Kubernetes Engine [Longform Tutorial]

In this article, we’ll guide you through the process of deploying a stateful, Dockerized Node.js app on Google Cloud Kubernetes Engine! As an example application, we will use Ghost - the open-source blogging platform we use to run the RisingStack blog and serve ~150K readers/month.

Takeaway: Once you go through this tutorial you’ll be able to follow these processes & ideas to deploy any stateful application on Kubernetes!


You Can Now Write Google Cloud Functions with Node.js 8

Let’s take a look at how to use the Node.js 8 environment by deploying a function that uses a couple of features that weren’t available in Node.js 6. The specific version of Node.js 8 that Google is currently using is 8.11.1.

nodejs-google-cloud

Probably the most significant change between Node.js 6 and 8 is the introduction of support for the async and await keywords. Node.js 8 also adds other useful items such as object spread syntax.


Supercharge your debugging experience with Node Inspector & ndb

Node Inspector lets you to use the DevTools user interface with the native Node debugger. DevTools can now connect directly to the Node process!

node-debugger

Using the chrome debugger is very much the same like using the debugger for client side code. You set breakpoints, execute the code, step over the breakpoints and find the bug.

We’re not done yet. On 20 July Google Chrome labs team open sourced their advanced debugging tool — ndb!

npm install -g ndb

It’s like any other npm package, very simple to use and install.

ndb

We now have a new chrome instance for the sole purpose of debugging. Epic!


Developing Real-Time Web Applications with Server-Sent Events

TL;DR: Server-Sent Events (SSE) is a standard that enables Web servers to push data in real time to clients. In this article, we will learn how to use this standard by building a flight timetable demo application with React and Node.js. However, the concepts you will learn following this tutorial are applicable to any programming language and technology.

developing-real-time-web-applications

In order to learn how to use Server-Sent Events, we are going to develop a simple flight timetable application (similar to those flight trackers you can find at any airport). The timetable app will consist of a simple web page showing a list of flights as shown in picture.


[EVENT] Designing Microservice Architectures with Node.js & Kubernetes

During the course of these two days, we will cover a high-level architectural overview of what is needed to design, develop and maintain an application built with microservices.

We will examine a microservices application developed adhering to current best practices, deploy it on Kubernetes and add the necessary infrastructural elements to make it resilient and self-healing.


Previous Node.js Updates:

From the previous Weekly Node.js Update:

  • Node.js 10.7.0 (Current) Released
  • Operationalizing Node.js for Server Side Rendering at Airbnb
  • N-API available in LTS release

& more...

We help you to stay up-to-date with Node.js on a daily basis too. Check out Node.js Daily!