#285 — April 25, 2019

Read on the Web

Node Weekly

Introducing Node.js 12 — The newest ‘current’ branch of Node.js upgrades to V8 7.4 which gives us a lot of memory and perf improvements for free as well as support for private class fields. TLS 1.3 support, a change in default HTTP parser, and diagnostic reports also make an appearance.

Node.js Foundation

The Path to Production: How and Where to Segregate Test Environments — Bringing a new tool into an organization is no small task. Adopting a CI/CD tool, or any other tool should follow a period of research, analysis and alignment within your organization.

CircleCI sponsor

Node 12's New Experimental ES Modules Support — Node.js 8.9.0 shipped Experimental support for ECMAScript modules has been shipped since Node.js 8.9.0, but Node 12 kicks things up a few notches due to the widespread industry support for ES modules in general. ES module support without using the --experimental-modules option is expected by the end of 2019. Dr. Axel Rauschmayer also has a good writeup on this feature.

Node.js Foundation

'You Should Never Ever Run Directly Against Node.js in Production. Maybe.' — In short, directly running Node apps (particularly those that act as servers) can be brittle, so why not use tools like supervisor, nodemon or pm2 to keep things robust?

Burke Holland

An Attempt at Creating a New 'Open' Registry for npm Packages — This is clearly in response to recent events surrounding npm and its corporate ownership and I think we’ll see more things like this popping up as the community figures out a way forward.


V8's Blazingly Fast Parsing: How Lazy Parsing Works — A deep-down, technical post from the V8 team on how the JavaScript engine’s pre-parsing functionality works to prevent unnecessary parsing taking place before it needs to.

Toon Verwaest and Marja Hölttä

💻 Jobs

Software Engineer - Full Stack (JavaScript) - Berlin — Join a fast learning environment where you can extend and build upon your skills & interests.


Have You Tried Vettery? — Vettery specializes in tech roles and is completely free for job seekers. Create a profile to get started.


📚 Tutorials

How to Use Computer Vision to Automatically Filter Images — Using Node, Heroku, and Google Cloud Vision API to identify cats (and, hmm, ‘not cats’).

Michael Auderer

How to Build a CLI App with Node — Sounds simple, but I found this interesting because it brings together lots of interesting libraries and approaches.

Dominik Kundel (Twilio)

Accelerate Releases by 35% — Remove testing bottlenecks by letting test engineers and developers work in parallel. Deploy faster, with less risk.

API Fortress sponsor

Using npm's ls Command for Fun and Insight

Tierney Cyren

Bending Jest to Our Will: Restoring Node’s Require Behavior — Jest overrides the behavior of Node’s require behavior to support concurrent testing and better test isolation. But what if we don’t want that?

Pete Corey

Building an Express-Based API To Convert Markdown to HTML — This is pretty basic but it’s always good to see Node mentioned on Smashing Magazine.

Sameer Borate

Build an Interactive Voice Response Menu using Node and Express — You can actually call +442038973497 or +19373652539 and play with the interactive voice response for yourself.

Alex Lakatos

▶  Using 'Clean Architecture' for Microservice APIs with MongoDB and ExpressClean Architecture is a software development model conceptualized by ‘Uncle Bob’ Martin.

Dev Mastery

Rendering a Triangle with Vulkan and JavaScript — Vulkan is a new(ish) low-level graphics and compute API from Khronos (the folks who manage standards like OpenGL & WebGL). Here’s the “Hello World” to using it from Node.

Felix Maier

🛠 Code and Tools

np: A Better 'npm publish' — A tool that ensures a variety of best package publishing practices. v5.0.0 is just out.

Sindre Sorhus

instagram-private-api 1.0: An API Client for Instagram's 'Private' API — Since this isn’t exactly officially supported, your mileage may vary. Take care.


Monitor and Analyze Node App Performance in Real-Time. Try Datadog Free

Datadog sponsor

Gluegun: A Toolkit for Building Node-Powered CLIs“We’ve assembled an all star cast of libraries to help you build your CLI.”

Infinite Red, Inc.

bent: Functional HTTP Client for Node with async/await Support

Mikeal Rogers

node-postgres: A Non-Blocking PostgreSQL Client for Node.js — Very popular and has had some releases in the past few weeks.

Brian Carlson

negative-array: Negative Array Index Support using ES2015 Proxies — For example, array[-1]. Even if you wouldn’t use this, the source is worth reading to learn how it works.

Sindre Sorhus