util.parseArgs arrives in Node 18.3
#440 — June 2, 2022
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 attitude to dependency management mitigates a lot of supply chain issues, but could some of its ideas be brought into the npm world? This post introduces an experiment to recreate the go mod vendor experience with npm as a way to provoke some 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 to tighten up the supply chain. The maintainers of popular packages now have to use it, but if you maintain any packages at all, you can learn more about how to join them 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 recall doing a webinar 10 years ago(!) on building one in Node myself but times have moved on and it’s possible to outsource a lot of the underpinnings now, as seen here.
Zara Cooper
Node Transactional Notification Management System Saves Time and Money
Courier sponsor
Using N|Solid Runtime from npm — N|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 Vite — Vite 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