---
title: "The productivity benefits from type stripping"
publication: "Node Weekly"
issue: 591
published_at: "2025-08-26"
canonical_url: "https://nodeweekly.com/issues/591"
---

Plus ImageJS 1.0, playing Minecraft with Node and LLMs, and a visual introduction to big O notation. |        

#​591 — August 26, 2025 

[Read on the Web](https://nodeweekly.com/issues/591)  

Together with [![Frontend Masters logo\](https://res.cloudinary.com/cpress/image/upload/c_fill,g_auto,w_300,h_70/e_make_transparent/co_white,e_outline:5/nk0tfdvalivacz8rw7rt.png)](https://frontendmasters.com/courses/next-js-v4/?utm_source=email&utm_medium=nodeweekly&utm_content=nextjsv4)  

![Node.js Weekly](https://res.cloudinary.com/cpress/image/upload/v1653576619/lgfqinzbdqttwmhvljxb.png) 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/xxkigiqvxqftttmdmtce.jpg)](https://blog.calm.com/engineering/how-we-migrated-our-rushjs-monorepo-to-node-type-stripping)  

[How We Migrated Our Rush.js Monorepo to Node Type Stripping](https://blog.calm.com/engineering/how-we-migrated-our-rushjs-monorepo-to-node-type-stripping) — Since v23.6 (and in LTS since [v22.18.0](https://nodejs.org/en/blog/release/v22.18.0)), Node has supported running (most) TypeScript code by [stripping the types out](https://nodejs.org/en/learn/typescript/run-natively) first. The Calm team was excited about the potential for improving productivity and DX, and set a migration in process. Here’s a look at the challenges encountered and what the end results were. 

Stuart Dotson (Calm)   [![\](https://res.cloudinary.com/cpress/image/upload/c_limit,w_480,h_480,q_auto/copm/7adfde67.jpg)](https://frontendmasters.com/courses/next-js-v4/?utm_source=email&utm_medium=nodeweekly&utm_content=nextjsv4) 

[Next.js Fundamentals for Modern Web Apps](https://frontendmasters.com/courses/next-js-v4/?utm_source=email&utm_medium=nodeweekly&utm_content=nextjsv4) — Gain hands on experience with server actions, caching, authentication, and performance. 

Frontend Masters sponsor   

[Speeding Up the JavaScript Ecosystem: Semver](https://marvinh.dev/blog/speeding-up-javascript-ecosystem-part-12/) — The latest in Marvin’s multi-year series of posts on optimizing heavily used parts of the JavaScript ecosystem: _“During the installation process, package managers run a bunch of semver comparisons. The `semver` library used in npm, yarn and pnpm can be made around 33x faster.”_ 

Marvin Hagemeister   

**IN BRIEF:** 

- Bun 1.3 is just around the corner, but [Bun v1.2.1 has just been released](https://bun.com/blog/bun-v1.2.21) with highlights including `Bun.SQL`, a first-class database client supporting MySQL, SQLite and Postgres, and a [500x faster `postMessage(string)` function.](https://bun.com/blog/how-we-made-postMessage-string-500x-faster)
- In ESLint v9.34.0, ESLint has [added support for multithreaded linting](https://eslint.org/blog/2025/08/multithread-linting/) which offers the potential for huge speedups on large projects.
- Vercel Functions running on the Node.js runtime [now support `fetch` web handlers.](https://vercel.com/changelog/node-js-vercel-functions-now-support-fetch-web-handlers)
- [Next.js 15.5 was released](https://nextjs.org/blog/next-15-5) with stable support for Node.js middleware runtime.   

[Eliminating JavaScript Cold Starts on AWS Lambda](https://goose.icu/lambda/) — [Porffor](https://porffor.dev/) is an _ahead-of-time_ JavaScript compiler which gives the benefit of rapid process launch times (i.e. under a millisecond). This is more a taste of the future, and something to experiment with, rather than to deploy into production ASAP. 

Oliver Medhurst   

📄 [Understanding `Promise.any()`: When One Success is Enough](https://allthingssmitty.com/2025/08/25/understanding-promise-any-when-one-success-is-enough/) – Given multiple promises, resolve as soon as just one fulfills. Matt Smith 

📄 [Unit Formatting with Intl in JavaScript](https://www.raymondcamden.com/2025/08/22/unit-formatting-with-intl-in-javascript) Raymond Camden 

📄 [Promises from the Ground Up](https://www.joshwcomeau.com/javascript/promises/) – Aimed at beginner-to-intermediate JS developers. Josh W Comeau    

🛠 Code & Tools 

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/tpsqluoqv9hlapjguzu8.jpg)](https://cronicle.net/)  

[Cronicle: Cron with a Web Front End](https://cronicle.net/) — Describing itself as ‘a fancy cron replacement’, Cronicle is a distributed task scheduler and runner, built around a Node app with a web based UI. [GitHub repo.](https://github.com/jhuckaby/Cronicle) 

Joseph Huckaby   

[ImageJS 1.0: Image Processing and Manipulation Library](https://docs.image-js.org/blog/releases/1.0/) — A library for resizing, cropping, filtering, color adjustments, and [numerous other image transformations](https://docs.image-js.org/docs/Features/) which works in Node.js _and_ the browser (supporting JPEG, PNG, BMP and TIFF – thanks to pure JS dependencies like [fast-jpeg](https://github.com/image-js/fast-jpeg) and [fast-png](https://github.com/image-js/fast-png)). v1.0 brings TypeScript support and a more intuitive API. [GitHub repo.](https://github.com/image-js/image-js) 

ImageJS Team   

[Rocketadmin: A Flexible, Secure Admin Panel Builder](https://rocketadmin.com/?utm_source=nodeweekly) — Seamlessly handle data — from MySQL to MongoDB. Try the next stage of no-coding back office solutions 

Rocketadmin sponsor   

[google-spreadsheet 5.0: Google Sheets API Wrapper for Node](https://theoephraim.github.io/node-google-spreadsheet/) — Work with Google’s online spreadsheet from Node, whether at the cell, row, worksheet, or document level. Supports numerous auth options and you can export sheets for download too. [GitHub repo.](https://github.com/theoephraim/node-google-spreadsheet) 

Theo Ephraim   

[Minecraft MCP Server: Let an LLM Take Control of Minecraft](https://github.com/yuniko-software/minecraft-mcp-server) — A fun way to play around with MCP servers and LLMs. It uses [Mineflayer](https://github.com/PrismarineJS/mineflayer), a JavaScript API for creating Minecraft bots, behind the scenes. The video in the README is cool, showing how Claude and this server can turn a photo of the White House into an in-world creation. 

Yuniko Software   

- [Repomix 1.4](https://github.com/yamadashy/repomix/releases/tag/v1.4.0) – Pack an entire repository into a single, LLM-friendly file. v1.4 adds the ability to integrate commit history.
- [pg-promise 12.0](https://github.com/vitaly-t/pg-promise/releases/tag/12.0.0) – Postgres interface for Node. Support for custom promises is now gone, now it's _"ES6 Promise all the way"_.
- 🌈 [yoctocolors 2.1.2](https://github.com/sindresorhus/yoctocolors) – Tiny terminal text coloring library. A smaller alternative to[Chalk](https://github.com/chalk/chalk) from the same creator.
- [Faker 10.0](https://github.com/faker-js/faker/releases/tag/v10.0.0) – Generate fabricated data to your heart's content. Now ESM only.
- [Sidequest.js 1.6](https://sidequestjs.com/) – Modern background job processor for Node apps.
- 🔒 [Secretlint 11.2](https://github.com/secretlint/secretlint/releases/tag/v11.2.0) – Tool to prevent committing credentials/secrets.
- 🤖 [OpenAI Node 5.15](https://github.com/openai/openai-node/releases/tag/v5.15.0) – The official Node library for OpenAI's API.
- [InversifyJS 7.9](https://github.com/inversify/InversifyJS/releases/tag/v7.9.0) – Lightweight inversion of control container.
- [Node-SSH 1.17](https://github.com/mscdex/ssh2) – Pure JS SSH2 client and server modules.
- [pnpm 10.15](https://pnpm.io/blog/releases/10.15) – Fast, space efficient package manager.
- [Undici 7.15](https://github.com/nodejs/undici/releases/tag/v7.15.0) – Node's powerful HTTP client library.       

📰 Classifieds   

⚠️ [The Hidden Cost of Async Context in Node.js](https://blog.platformatic.dev/the-hidden-cost-of-context) — discover the hidden toll behind rebuilding the same logic across your app. 

--- 

😁 Sub-ms latency means happier users. Redis 8.2 is 91% faster than 7.2 and is a drop-in upgrade. [Get started for free](https://redis.io/lp/get-started2/?utm_source=cooper-press&utm_medium=cpa&utm_campaign=2025-08-app_performance-node-weekly-1&utm_content=cloud_-_redis_cloud_users).    

📢 Elsewhere in the ecosystem  

A roundup of some other interesting stories in the broader landscape:  

[![\](https://res.cloudinary.com/cpress/image/upload/w_1280,e_sharpen:60,q_auto/j1o4q0yewjedmfq6tazn.jpg)](https://samwho.dev/big-o/)  

- Sam Rose has put together [a fantastic illustrated introduction to Big O notation](https://samwho.dev/big-o/), along with JavaScript examples. If you've ever wondered what O(1), O(log n), etc. mean, this is a great primer.
- [Minification Benchmarks](https://github.com/privatenumber/minification-benchmarks) is a frequently updated benchmark of different JavaScript minifiers, with [cminify](https://codeberg.org/Jumping-Beaver/cminify) being the newest addition.
- The WebKit team [introduces the CSS `random()` function](https://webkit.org/blog/17285/rolling-the-dice-with-css-random/), now in Safari Technology Preview, and coming to CSS more generally (in some form or another) later on.
- If you use AWS at all, [this list of 'AWS stuff you think you know that's now wrong'](https://www.lastweekinaws.com/blog/aws-in-2025-the-stuff-you-think-you-know-thats-now-wrong/) from Corey Quinn is an eye-opener.
- [An illustrated guide to OAuth.](https://www.ducktyped.org/p/an-illustrated-guide-to-oauth) 

**P.S.** We're taking next week off, so we'll be back in two weeks on September 9.    

**Got a link for us?** Reply and tell us. We can't include everything but we'll look at anything you send. _Thanks!_ 

--- 

**Sponsorship:** Email `[kristina@cooperpress.com](mailto:kristina@cooperpress.com)` for details. 

--- 

Published by Cooper Press Ltd.
Fairfield Enterprise Centre, Louth, LN11 0LS, United Kingdom 

[Cancel your subscription](https://nodeweekly.com/leave/*|UID|*) or [change your address](https://nodeweekly.com/edit_subscription/*|UID|*).
