A TypeScript release targeted at Node developers
#565 — February 4, 2025
Announcing TypeScript 5.8 Beta: A Big One for Node Developers — It’s unusual for a TypeScript beta to be exciting for Node developers in particular, but while TypeScript 5.8 is low on features generally, it’s really Node focused with support for require() of ES modules in the nodenext mode, a stable –module node18, and most notably a –erasableSyntaxOnly option for ensuring the use of TypeScript that Node 22.6+’s type-stripping features can deal with.
Daniel Rosenwasser
Introducing Mentoss: The fetch Mocker — A new approach to mocking global fetch() calls (in both browsers and server-side runtimes) inspired by previous attempts like Nock and MSW.
Nicholas C. Zakas
Memetria K/V: Efficient Redis & Valkey Hosting — Memetria K/V hosts Redis OSS and Valkey for Node.js apps, featuring large key tracking and detailed analytics to manage and optimize application data effectively.
Memetria sponsor
Standard Schema: A Common Interface to Schema / Validation Libraries — From the creators of Zod, Valibot and ArkType comes a fantastic bit of collaboration to define a common interface to use JavaScript and TypeScript schema libraries.
McDonnell, Hiller, and Blass
IN BRIEF:
Node.js v23.7.0 (Current) has been released with many bug fixes and tweaks. You can now use glob patterns in the exclude option of glob functions and there’s a new error to let TypeScript users know unsupported TypeScript features are present in their code.
Josh Goldberg explains the differences between ESLint and TypeScript, beyond the obvious.
Publican is a promising, new, Node.js-powered static site generator.
Harmony, from Bit, describes itself as a ‘minimalistic stitching layer for composable architectures’ – think a cross between monoliths and microservices without the downsides of each.
The Modern Way to Write JavaScript Servers? — The irony is that while Node popularized JavaScript on the server (if we ignore Netscape’s attempts in the 90s) this modern, standardized cross-runtime approach doesn’t quite work on bare Node (yet – though you can polyfill it.)
Marvin Hagemeister
Start Selling to Enterprise Faster with WorkOS — Add SSO, SCIM, and RBAC to your B2B SaaS app in minutes—not months.
WorkOS sponsor
📄 How We Share Secrets at a Fully-Remote Startup – And, curiously, it involves using Node. Dmitry Sagalovskiy
📄 Keep Your Node Apps Secure with npx is-my-node-vulnerable Trevor I. Lasn
📄 How to Use Node’s fs in the Browser for Custom Playgrounds Ivan Chebykin
📄 Distributed Tracing in Node.js with OpenTelemetry Ayooluwa Isaiah
🛠 Code & Tools
parse-duration 2.0: Convert a Human Readable Duration to Milliseconds — You might wonder why a library that converts 1hr 20mins into 4800000 needs a version 2. Well, it now supports more units (mo, mth, microsec, and nanosec), has moved to ESM, and supports locales.
Jake Rosoman
Node File Trace (NFT): Node Dependency Tracing Utility — A tool to determine exactly which files are necessary for an app to run. Finally, a type of NFT I can actually comprehend!
Vercel
Feluda: A Tool to Analyze the Licences of Dependencies — It’s a Rust-powered project but one which can be used to process the dependencies of Node, Go, or Rust projects and return a report (or show a TUI interface) on potentially restrictive licenses that apply.
Kumar Anirudha
📄 docxtemplater: Generate docx and pptx Documents from Templates — Generate Word and PowerPoint files dynamically by merging against template documents (e.g. invoices, contracts, certificates) It’s open source (MIT/GPLv3) but the creator offers commercial extensions (such as for supporting Excel). GitHub repo and feature demos.
Edgar Hipp
http-status: Another Way to Work with HTTP Status Codes — For example: status[418] returns “I’m a teapot” and status.IM_A_TEAPOT returns 418.
Adaltas
get-value 4.0 – Use property paths (a.b.c) get a nested value from an object.
🤖 OpenAI Node 4.82 – The official Node library for OpenAI’s API adds support for their new o3-mini model.
sqs-consumer 11.5 – The BBC’s solution to building AWS Simple Queue Service (SQS) apps sans boilerplate.
exiftool-vendored 29.1 – Cross-platform access to ExifTool for managing metadata in multimedia files.
Wasp 0.16 – Wasp is a Rails-like framework using Node, React & Prisma.
🤖 node-llama-cpp 3.5 – Run LLMs locally with bindings to llama.cpp.
Neutralinojs 5.6 – Lightweight cross-platform desktop app approach.
MongoDB Node.js Driver 6.13 – The latest official MongoDB driver.
pnpm 10.2 – The alternative, efficient package manager.
Prisma 6.3 – Popular ORM for Node.js and TypeScript.
pino-http 10.4 – High-speed HTTP logger for Node.
📰 Classifieds
Learn about Node.js environment variables, how they are used, and the many ways to set them.
Ship faster, fix quicker! 🛠️ Our workshop shows you how code-level visibility helps you squash bugs & slowdowns before release. Register >>
📢 Elsewhere in JavaScript
A quick roundup of some of other interesting stories in the broader JavaScript landscape, in case you’ve missed them:
🤣 The Deno vs Oracle JavaScript™ trademark case rolls on with Oracle just barely meeting a deadline to file a motion to dismiss the case. Oracle asserts that “relevant consumers do not perceive JAVASCRIPT as a generic term” and implies JavaScript is quite clearly theirs in the eyes of the public thanks to the popularity of their Oracle JavaScript Extension Toolkit (JET).
The JSR open source registry, created by the Deno team, now has an independent governing board of directors with a policy of ‘open governance’ in order to provide value to the entire JavaScript community.
📊 Vercel has acquired the team behind Tremor, a popular suite of React components for building charts and dashboards. The plan is to enhance v0 with Tremor’s work and to open-source more components.
The creator of SolidJS says that Angular and Vue are the frameworks to watch in 2025, while reflecting on JS framework progress generally.
Bun 1.2.2 has been released with big drops in idle memory usage.