#365 — November 19, 2020

Read on the Web

Node Weekly

🐦  Stand Aside CommonJS, Node.js is ESM Country Now — Myles posted an amusing tweet saying he’s declaring CJS ‘over’ if no-one disagreed (and turned off replies on the tweet!) but ESM (ES modules) support is due to be marked as stable (a year after being unflagged), and the Node.js modules team will stop its regular meetings. CommonJS will, of course, continue to work and be a key part of Node.js but ESM use is only going to grow.

Myles Borins on Twitter

Node.js November 2020 Security Releases — Node 12.19.1, 14.15.1 and 15.2.1 have been released, all to address a high severity DoS vulnerability. If your Node app lets third parties trigger DNS requests for a host of their choice, this can, in theory, be abused to bring down your app.

Node.js Project

Build Code and Ship In App Messaging in a Few Hours — Stream makes it easy with SDKs and Chat React UI Components. Stream powers Feeds and Chat for over one billion end-users.

Stream sponsor

Building Modern Native Addons for Node in 2020 — N-API provides a stable API to develop native add-ons against and all LTS versions of Node now support N-API version 3 or higher, so if you haven’t explored the art of building native add-ons in a while, now’s a great time.

Wu, Schulhof, Schlight, Eady, Dawson, and Del Gobbo

Announcing the Alpha of ApostropheCMS 3.0 — ApostropheCMS (GitHub repo) is a Node-based CMS and this 3.0 release updates the back-end with modern JavaScript practices, improves modularity, and re-builds the admin UI with Vue.js and a new rich text editor.

Ben Loeffler

Electron 11 Released with Experimental Apple Silicon Support — The popular cross platform desktop app environment upgrades its dependencies across the board (hi Chromium 87!) and begins to take steps into the Darwin arm64 world.

GitHub / OpenJS Foundation

📗 Tutorials

Use a Docker Container as a Development Environment with VS Code — Do you live in VS Code? Did you know you can create and configure a full-featured container based development environment from it? Here’s all the pieces to take into account.

Burke Holland

Using Vue as a Node.js Static Site Generator — Vue makes for a compelling option if you want a simple build process for a static site that can support plain HTML templates.

Valeri Karpov

OpenTelemetry 101 Technical Guide

Lightstep sponsor

Reusable Development Containers with Docker Compose and Dip — Dip (Docker Interaction Process) abstracts Docker and Docker Compose files so you can quickly fire up a dev environment without copying anything over. Very useful, especially if you have multiple projects, and here’s how to use it with Ruby, Node, and Erlang.

Vladimir Dementyev

Capturing User Emails in Google Sheets — The team behind a political prediction visualization needed to stay in touch with its supporters. Their approach? Spin up a Node-powered function on AWS Lambda and push email addresses onto a Google Sheet.

Christopher Lanoue

Adding Authorization to a Serverless Node App with Osooso is an open source policy engine for authorization (written in Rust but with a Node library available) that you embed in your application.

Gabe Jackson

🛠 Code and Tools

Cote 1.0.1: A Library for Building Zero-Configuration Microservices — When they say ‘zero’, they mean even without things like Nginx or Redis - everything ‘batteries and chargers’ is included. Mature and been around for years.

Armagan Amcalar

jose: Universal 'JSON Web Almost Everything' — Did you know there were so many “JSON Web *” specs? JSON Web Signature, JSON Web Tokens, JSON Web Encryption, and more. This library aims to tackle most of them in both Node and browser. JWA, JWS, JWE, JWT, JWK and more are here.

Filip Skokan

How Do Top Developers Deliver Video? - Download the 2020 Video Report — A handy lens into the minds of video developers as it reveals the market’s biggest challenges and the future of video.

Bitmovin Inc. sponsor

node-libcurl 2.3: libcurl Bindings for Nodelibcurl is a very powerful and established way to fetch data from URLs across numerous protocols. Here's what's new in v2.3.0.

Jonathan Cardoso Machado

http-status: Another Way to Work with HTTP Status Codes — If you’d rather work with things like status.INTERNAL_SERVER_ERROR rather than numeric codes, perhaps.

Adaltas

npm v7.0.11 Released
The npm Blog

A DynamoDB Data Mapper for Node
Greg Sabia Tucker

💻 Jobs

Mux Is Hiring Across the Board to Build Netflix-Grade Video Infrastructure

Mux

Find a Job Through Vettery — Create a profile on Vettery to connect with hiring managers at startups and Fortune 500 companies. It's free for job-seekers.

Vettery

Want more? The official Node.js Twitter account put out a call for Node.js job openings earlier last week and there were over 50 replies.