Node 23 Gets TypeScript Support, Mostly | Ep 2
In this episode, Kamran and Erik discuss the newly released TypeScript support with Node 23.6 and its implications. What's supported? What's not supported? And how does it differ from Bun or Deno?
News
- (00:00) - Ep 2 - Node 23 Gets TypeScript Support
- (00:05) - Introduction
- (04:04) - TypeScript News and Announcements
- (10:27) - A Closer Look at Type Stripping for Node 23
- (22:56) - Differences Between Node 23 and Deno 2
- (30:22) - Cool TypeScript Stuff
News
- Everything You Need to Know About Node.js Type Stripping by Marco Ippolito
- Node 23.6.0 Release Notes -- The one with TypeScript support
- Docs: Node 23 “Modules: TypeScript”
- Node's new built-in support for TypeScript by Dr. Axel Rauschmayer
- Native Typescript support coming to Eleventy by Zach Leatherman (PR)
- ESLint 9.18 – Zero-config TypeScript support by Andrey Sitnik
- TypeScript 5.8: Erasable Syntax Only
- PSA: Create React App doesn’t work with React 19, use Vite!
Errata
- 19:11 -- We incorrectly assumed that TSC is used for the transpilation in Node 23, but that's not true. SWC still handles the transpilation (if the flag is used) so Node's TypeScript support does not rely on TSC at all. Reported by: Marco Ippolito
Cool Stuff
- Jiti: A Node.js package for ESM and TypeScript support
- Example of `satisfies never` with switch statements by Cecile Muller, Bluesky
- What is the “satisfies” type constraint? By Matt Pocock
- Dockview – npm package for a TypeScript native window manager
- Using “as const” for config typing by Matt Pocock
Sponsored by Excalibur.js
Excalibur.js is the friendly TypeScript game engine for making 2D web games. Use your TypeScript or JavaScript skills to make games! Excalibur comes out-of-the-box with everything you need to make web games, like physics, sprites, animations, sound effects, input, and particles. Design your assets with tools like Aseprite and Tiled, then load them natively using first-party plugins.
Excalibur.js is the friendly TypeScript game engine for making 2D web games. Use your TypeScript or JavaScript skills to make games! Excalibur comes out-of-the-box with everything you need to make web games, like physics, sprites, animations, sound effects, input, and particles. Design your assets with tools like Aseprite and Tiled, then load them natively using first-party plugins.
Creators and Guests

Host
Erik Onarheim
Hi, my name is Erik 👋 I'm a software developer in Minneapolis ⛄I created a game engine for the web called Excalibur 🗡

Host
Kamran Ayub
Solopreneur, speaker, and Pluralsight author. Gamer dad. Dork. Corporate quitter bringing back summers off 🌞👉 Building a Goodreads for gamers: ktomg.com👉 React/Next.js courses: bit.ly/KamranOnPluralsight👉 Build your own safety net: kamranicus.com/money
