#​502 — September 19, 2023

Read on the Web

Together with  AppSignal logo
Node.js Weekly

Does Node.js Need a Mascot? — Go has its cute gopher, Deno has a dinosaur, Bun has, well.. a bun, but what does Node have? Nothing official, as such, and Matteo Collina ponders whether we should change that. Most of the suggestions seem tongue in cheek, but the Node homepage does feel a little bare without something..

Matteo Collina et al.

Node v20.7.0 (Current) Released — A less feature-packed release than usual, but npm gets bumped to the recently released v10.1, you can use process.getSourceMapsEnabled to detect if source maps are enabled, multiple --env-file declarations are supported (where each file will override the previous one, as necessary), plus the usual entourage of bug fixes.

Ulises Gascón

💡 Node v18.18.0 (LTS) has also been released and introduces the --import flag for pre-loading ESM modules, like how --require does for CommonJS modules.

Tracking Errors in a Node.js Application — Bugs in production slow down velocity and often affect the complete trajectory of your release roadmap. In this article, we'll look at how to make tracking errors and fixing bugs in your Node.js application more convenient, automated, and safe.

AppSignal sponsor

Matteo's Thoughts on Bun — As the creator of Fastify and a Node.js TSC member, it’s interesting to see what Matteo thinks of alternative runtime Bun. He finds it exciting but does not consider it to be a ‘drop-in replacement’ yet, especially as it does not support Fastify.. OK, as of Bun 1.0.2, it does.

Matteo Collina

ASIDES:

Securing Node Apps by Analyzing Real-World Command Injection Examples — If there’s a vulnerability in an npm package, there’s a bad actor looking to take advantage of it. A particularly nasty vulnerability is when code can be manipulated to run unintended and arbitrary commands. Liran explains the ramifications of such command injections and shows off a real world example.

Liran Tal

Serverless Bun vs Node: Benchmarking on AWS Lambda — Following the recent release of Bun 1.0, Mitchell ran some tests to determine if the updated runtime is a legitimate contender for serverless environments like AWS Lambda.

Mitchell Kossoris

A Developer’s Guide to Getting Started with Temporal — Use this TypeScript SDK guide to see how Temporal OSS delivers durable execution for your services and applications.

Temporal Technologies sponsor

Playwright API Testing with ZodZod is a TypeScript-first schema declaration and validation library.
Tim Deschryver

▶  Why You Shouldn't Use EventEmitter for Async Operations
Matteo Collina

How to Use Node.js to SSH into Remote Servers
Bipin Parajuli

🛠 Code & Tools

Chrono 2.7: A Natural Language Date Parser — Give it a string like “today”, “last Friday”, “2 weeks from now”, or even an entire date and time, and it’ll come up with a date object to suit.

Wanasit Tanakitrungruang

depcheck: A Tool to Check for Unused Dependencies — A command line tool that analyzes the dependencies in a project to see how each dependency is used, which dependencies are ‘useless’, and which are missing from package.json. You can run it with npx depcheck

Djordje Lukic and Junle Li

node-diskusage 1.2: Cross-Platform Disk Usage Statistics — Implements platform specific bindings to obtain disk usage information (available space, physically free space, and total space) on Windows and POSIX platforms.

jduncanator

workerpool 6.5: Offload Tasks to a Pool of Workers — A long established thread pool library that works not only on Node but also in the browser.

Jos de Jong

SMOB: Safe Merging of Objects and Arrays — A zero dependency library to safe merge objects and arrays with customizable behavior.

Peter Placzek

📰 Classifieds

💻 Hired makes job hunting easy-instead of chasing recruiters, companies approach you with salary details up front. Create a free profile now.


🐘 Postgres user? Postgres Weekly is our sister newsletter focused entirely on the Postgres ecosystem.


📅 If you're introducing AI and ML technologies into your programming, or intend to, check out the AI Engineer Summit taking place October 8-10 in San Francisco. If you can't attend in person, you can get a free remote ticket.

i18n-iso-countries: i18n for ISO 3166-1 Country Codes — Supports 75 different languages and lets you convert between ISO 3166 representations in both alpha and numeric forms.

Michael Wittig

fusion.ssg 1.2: A Minimal Framework for Static Sites — If React may be overkill for your simple, static project, but you’d still like to use JSX/TSX components, this framework might be all you need. Here’s a video demo.

Jeff Schwartz

stale-dep: A CLI Tool to Check if Your node_modules is Stale — You can try it out right now with npx stale-dep.

Kevin Deng