#​440 — June 2, 2022

Read on the Web

Node.js Weekly

Node v18.3.0 (Current) Released — It’s not a huge release but there are some solid dependency updates (npm 8.11.0, V8 10.2, Undici 5.4), Windows 32 binary releases are back, and one notable new (experimental) feature: the util.parseArgs function for bringing an official command line argument parsing approach to Node core – here’s a basic code example as well as the docs.

Bryan English

💡 Node 17.9.1 and 16.15.1 have been released too but are minor dependency-focused releases.

What npm Can Learn from Go — Go’s approach to dependency management mitigates some key supply chain issues, but could some of Go's ideas be brought into the world of npm? This post introduces an experiment to recreate the go mod vendor experience with npm as a way to provoke community discussion on ways forward.

Danny Hermes

Run Node Unikernels 2X as Fast on GCP and 3X as Fast on AWS — Run your first open source Node.js unikernels in seconds. Node.js unikernels aren't just faster than docker - they are faster than Linux itself. Unikernels are easier to debug, deploy and safer too. Try it now.

NanoVMs sponsor

Top 500 npm Package Maintainers Now Require 2FA — In response to numerous security issues with the npm ecosystem in recent years, GitHub has been keen to encourage package maintainers to use 2FA. The maintainers of many popular packages now have to use 2FA, but if you maintain any packages at all, you can learn more about how to join the 2FA gang here.

GitHub

npm Security Update: What GitHub Learnt About April's Attack — Back in April, GitHub reported that stolen OAuth user tokens were used to access some private repositories, private package manifests and metadata, as well as npm user account data, and they've shared the full story here.

Greg Ose (GitHub)

How We Converted Our Node.js Library to Deno (using Deno)“We landed on a “runtime adapter” pattern that we think represents a general-purpose approach that may be useful to other library authors looking to support Deno.”

James Clarke (EdgeDB)

You May Not Need a Bundler for Your NPM Package.. — Colin makes a good argument to run as cleanly as possible, but there are plenty of links to other options, if you prefer.

Colin Diesh

HTTP Testing with Hurl in Node.js — Hurl is a (Rust-powered) command-line tool for running HTTP requests defined in simple text files and you can use it from within a Node project too.

David Humphrey

How to Build a Group Chat App with Vanilla JS, Twilio and Node — Chat apps have long been a popular bucket list project for Node developers. I did a webinar (or livestream to the young'uns) 10 years ago(!) on building a chat app in Node myself but times have moved on and it’s possible to outsource much of the infrastructure now, as seen here.

Zara Cooper

Node Transactional Notification Management System Saves Time and Money

Courier sponsor

Using N|Solid Runtime from npmN|Solid Runtime is a special Node.js distribution that includes N|Solid’s agent to extract live metrics and app behavior information from apps in production.

Adrián Estrada (NodeSource)

New Express 5 Features to Try — Still in beta, though.
Zara Cooper

How to Deploy a NestJS App on Google Cloud Run with GitHub Actions
Tom Ray

🛠 Code & Tools

pkg.land: A Way to Find Alternative npm Packages — It’s quite a minimally designed site but it attempts to give you suggestions for related or alternative packages to use. I’m not entirely convinced by the approach so far (consider Express’s alternatives) but it’s fast and shows promise (such as for the colors package.)

pkgland

Jest Image Snapshot: A Jest Matcher for Image Comparisons — Say hello to visual regression testing using this tool from American Express. Take image snapshots of your app within a test and compare them against a baseline. It can even handle tolerances if you want to ignore subtle changes and only throw on huge discrepancies.

American Express

Vavite: Develop Server-Side Applications with ViteVite is best known as a build tool closely associated with (but that doesn’t require) Vue.js but it supports transpiling server-side code too and Vavite takes advantage of this.

Fatih Aygün

Try the CI/CD Tool Used by Shopify, Pinterest, and Lyft - Now Free

Buildkite sponsor

waitehr: Waits for an HTTP Response and Retries Requests — Nice to see a CLI tool written in Node rather than Go or Rust for once. This tool makes and waits for an HTTP response (a la curl) but brings timeouts, retries, and redirects into the mix. The usage examples may convince you of its value.

Gajus Kuizinas

Commander 9.3: Node Command-Line Interfaces Made Easy — The long standing ‘batteries included’ system for building apps that interface with the command line.

TJ Holowaychuk

cf-workers-telegram-bot: Run a Serverless Telegram Bot on CloudFlare Workers
Sean Behan

💻 Jobs

Web Academic Lead - US (Remote) — Mentor aspiring developers seeking to build inspiring careers. Create and lead the online sessions, being the role model for our students.
Masterschool

Find Tech Jobs with Hired — Create a profile on Hired to connect with hiring managers at growing startups and Fortune 500 companies. It's free for job-seekers.
Hired